This file contains hidden or 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
/// <summary>Delegate for changing value from old one to some new based on provided new value.</summary> | |
/// <typeparam name="V">Type of values.</typeparam> | |
/// <param name="oldValue">Existing value.</param> | |
/// <param name="newValue">New value passed to Update.. method.</param> | |
/// <returns>Changed value.</returns> | |
public delegate V Update<V>(V oldValue, V newValue); | |
/// <summary>Immutable http://en.wikipedia.org/wiki/AVL_tree where actual node key is hash code of <typeparamref name="K"/>.</summary> | |
/// <remarks>Does not support Remove, though it easy to implement based on Eric Lippert's http://blogs.msdn.com/b/ericlippert/archive/2008/01/21/immutability-in-c-part-nine-academic-plus-my-avl-tree-implementation.aspx. | |
/// You may emulate Remove by updating key value to null. |
This file contains hidden or 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 NUnit.Framework; | |
namespace DryIoc.IssuesTests | |
{ | |
[TestFixture] | |
public class Issue164_EventAggregatorImpl | |
{ | |
[Test] | |
public void Able_to_handle_multiple_events_being_singleton() |
This file contains hidden or 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.Collections.Generic; | |
using System.Diagnostics; | |
using System.Reflection; | |
using System.Reflection.Emit; | |
namespace DryTools | |
{ | |
public static class ExtractName | |
{ |
This file contains hidden or 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
public class D<T0, T1> { } | |
public class G<T0, T1> : D<int, T1> { } | |
[Test] | |
public void Get_generic_arguments_should_work_the_same_on_all_platforms() | |
{ | |
// For generic type definition Type.GetGenArgs == TypeInfo.GenPars | |
var typeGenArgs = typeof(G<,>).GetGenericArguments(); | |
var infoGenArgs = typeof(G<,>).GetTypeInfo().GenericTypeArguments; | |
var infoGenPars = typeof(G<,>).GetTypeInfo().GenericTypeParameters; |
This file contains hidden or 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
/* | |
Results: | |
Compile Expression 3000 times: 814 | |
Invoke Compiled Expression 5000000 times: 724 | |
Emit from Expression 3000 times: 36 | |
Run Emitted Expression 5000000 times: 722 | |
*/ | |
using System; |
This file contains hidden or 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.ComponentModel.Composition; | |
using DryIoc.MefAttributedModel; | |
using DryIocAttributes; | |
using NUnit.Framework; | |
namespace DryIoc.Examples | |
{ | |
[TestFixture] | |
public class DotnetWeekBlogExample |
This file contains hidden or 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.Expressions; | |
public class Program | |
{ | |
public static void Main() | |
{ | |
var p = new Program(); | |
var expr = p.GetNExpr(); |
This file contains hidden or 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.Collections.Generic; | |
using System.Linq; | |
using NUnit.Framework; | |
namespace DryIoc.IssuesTests | |
{ | |
[TestFixture] | |
public class InjectListOfDepsWithStringDeps | |
{ |
This file contains hidden or 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 NUnit.Framework; | |
namespace DryIoc.IssuesTests | |
{ | |
[TestFixture] | |
public class Issue164_EventAggregatorImpl | |
{ | |
[Test, Explicit] | |
public void Able_to_handle_multiple_events_being_singleton() |
This file contains hidden or 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
import Html exposing (..) | |
import Html.App as Html | |
import Html.Attributes exposing (..) | |
import Html.Events exposing (..) | |
import String as String | |
main = | |
Html.beginnerProgram | |
{ model = model | |
, update = update |