Skip to content

Instantly share code, notes, and snippets.

@dgg
dgg / pull.sh
Last active September 22, 2017 12:38
net-core-sdk-2-on-unsupported-os
> docker pull microsoft/dotnet:2.0-sdk
# tag pulled image for easier usage
> docker tag microsoft/dotnet:2.0-sdk sdk2
@dgg
dgg / NMoneys.Serialization.Json_NET.nuspec
Last active July 3, 2017 10:43
multi-targeting-source-code-packages
<?xml version="1.0"?>
<package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<id>NMoneys.Serialization.Json_NET</id>
<title>NMoneys Serialization: Json.NET</title>
<version>4.0.0.0</version>
<authors>Daniel González García</authors>
<licenseUrl>http://www.opensource.org/licenses/bsd-license.php</licenseUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Custom serialization when NMoneys objects are to be serialized/deserialized using Json.NET.</description>
@dgg
dgg / Main.cs
Created March 23, 2017 07:49
not-last-console-CLAP
static void Main(string[] args)
{
var parser = new Parser<Doer>();
parser.Register.EmptyHelpHandler(Console.WriteLine);
parser.Register.HelpHandler("?,h,help", Console.WriteLine);
parser.Register.ErrorHandler(ex =>
{
ex.ReThrow = false;
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(ex.Exception.Message);
@dgg
dgg / Main.cs
Created March 22, 2017 09:12
not-last-console-CommandLineUtils
static void Main(string[] args)
{
var app = new CommandLineApplication();
app.HelpOption("-h | -? | --help");
app.Commands.Add(new Something(app.OptionHelp.Template));
CommandArgument locations = null;
CommandOption awesome = null;
@dgg
dgg / Main.cs
Created March 16, 2017 09:55
not-last-console-LBiCliArguments
class Program
{
static void Main(string[] args)
{
var parser = new ArgumentParser<IRunnable>(typeof(Something), typeof(SomethingElse));
IRunnable runnable;
if (parser.TryParse(args, out runnable))
{
runnable.Run();
}
@dgg
dgg / Main.cs
Last active February 24, 2017 09:34
not-last-console-PowerArgs
class Program
{
static void Main(string[] args)
{
ArgAction<Doer> action = Args.InvokeAction<Doer>(args);
}
}
@dgg
dgg / Main.cs
Last active February 16, 2017 14:55
not-last-console-CommandLineParser
static void Main(string[] args)
{
Parser.Default.ParseArguments<Something, SomethingElse>(args).MapResult(
(Something something) =>
{
var options = new OptionsForSomething
{
Location = something.Location,
Times = something.Times,
Awesome = something.Awesome
@dgg
dgg / CustomFactory.cs
Last active February 16, 2017 14:38
not-last-console-GoCommando
internal class CustomFactory : ICommandFactory
{
public ICommand Create(Type commandType)
{
// do some extremelly poor-man's service locations
if (commandType == typeof(Something))
{
return new Something(Console.Out);
}
if (commandType == typeof(SomethingElse))
@dgg
dgg / UppercaseConstraint.v2.cs
Created June 10, 2016 13:35
migrating-custom-constraints-to-nunit3
internal class UppercaseConstraint : Constraint
{
public override bool Matches(object current)
{
actual = current;
var c = (char)current;
return char.IsUpper(c);
}
public override void WriteDescriptionTo(MessageWriter writer)
@dgg
dgg / ComposablePropertyConstraint.cs
Last active June 8, 2016 12:15
a-case-of-composition-and-communication.simplest
public class ComposablePropertyConstraint : PropertyConstraint
{
public ComposablePropertyConstraint(string name, IConstraint baseConstraint) :
base(name, baseConstraint) { }
}