This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Test] | |
public void FizzBuzz() | |
{ | |
var rules = new Dictionary<int, string> { { 3, "Fizz" }, { 5, "Buzz" } }; | |
Func<int, string> translate = i => | |
rules.Aggregate((string)null, (s, x) => i % x.Key == 0 ? (s == null ? x.Value : s + x.Value) : s) | |
?? i.ToString(); | |
var words = Enumerable.Range(9, 7).Select(translate).ToArray(); | |
CollectionAssert.AreEqual(new[] { "Fizz", "Buzz", "11", "Fizz", "13", "14", "FizzBuzz" }, words); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let rules = [(3, "Fizz"); (5, "Buzz")] | |
let translate x = | |
None |> List.foldBack (fun (i, word) say -> | |
if x % i = 0 then Some <| Option.fold (+) word say | |
else say) rules | |
for n in 1..100 do | |
printfn "%s" <| match translate n with | Some s -> s | _ -> string n |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Option Strict Off | |
Option Explicit Off | |
Imports System | |
Imports EnvDTE | |
Imports EnvDTE80 | |
Imports EnvDTE90 | |
Imports EnvDTE90a | |
Imports EnvDTE100 | |
Imports System.Diagnostics |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<# | |
PowerShell script to rename C# Project step-by-step: | |
* Copying project folder to folder with new project name | |
* Renaming .csproj file and other files with project name | |
* Changing project name reference in .sln solution file | |
* Changing RootNamespace and AssemblyName in .csproj file | |
* Renaming project inside AssemblyInfo.cs | |
#> | |
param( | |
[parameter( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Linq; | |
using System.Threading; | |
using NUnit.Framework; | |
namespace Playground | |
{ | |
[TestFixture] | |
public class RefTests | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using NUnit.Framework; | |
using Microsoft.CSharp.RuntimeBinder; | |
namespace MultiMethodsWithDymanic | |
{ | |
[TestFixture] | |
public class MultimethodsTests | |
{ | |
[Test] | |
public void What_is_good_for_rabbit_is_not_good_for_wolf() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
namespace Juliet | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
Union3<int, char, string>[] unions = new Union3<int,char,string>[] | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
if [%1]==[] (echo error: Please specify countfile as command line argument. Could be count.txt or similar. && exit /B 1) | |
set COUNTFILE=%1 | |
(set /P COUNT=<%COUNTFILE%)2>nul || set COUNT=0 | |
set /A COUNT+=1 | |
echo:%COUNT%>%COUNTFILE% |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<# | |
Token-replacement template engine for PowerShell courtesy to http://www.bricelam.net/2012/09/simple-template-engine-for-powershell.html | |
Usage: | |
Merge-Tokens 'Hello, $target$! My name is $self$.' @{ target = 'World'; self = 'Brice' } | |
#> | |
function Merge-Tokens($template, $tokens) | |
{ | |
return [regex]::Replace($template, '\$(?<token>\w+)\$', | |
{ param($match) $tokens[$match.Groups['token'].Value] }) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Reflection; | |
using NUnit.Framework; | |
namespace Playground | |
{ | |
[TestFixture] | |
public class EitherTests | |
{ | |
[Test] |
OlderNewer