Example #1
0
        private static void Main(string[] args)
        {
            var source = new string[] { "Hallo", "welt" };

            List <string> list    = new List <string>();
            List <string> newList = list.AddMany(source);

            var dict = new HashSet <string>();

            Ext.AddMany(dict, source);

            Dictionary <string, string> dst = new Dictionary <string, string>()
                                              .AddMany(new KeyValuePair <string, string>[]
            {
                new KeyValuePair <string, string>("a", "a"),
                new KeyValuePair <string, string>("aa", "aa"),
            });

            Console.WriteLine("Hello World!");

            var ranges = new List <DateTimeRange>
            {
                new DateTimeRange(new DateTime(2020, 01, 01), new DateTime(2020, 01, 15)),
                new DateTimeRange(new DateTime(2020, 01, 10), new DateTime(2020, 02, 01)),
                new DateTimeRange(new DateTime(2020, 02, 03), new DateTime(2020, 02, 20)),
                new DateTimeRange(new DateTime(2020, 03, 01), new DateTime(2020, 04, 01)),
            };

            var intersecting = ranges.MergeIntersecting(TimeSpan.FromDays(2));

            RefX();

            var rng = new TimeSpanRange(TimeSpan.FromMinutes(1), TimeSpan.FromMinutes(2));

            var enumerated = rng.Enumerate(TimeSpan.FromSeconds(2)).ToList();

            var dtrange = new DateTimeRange(DateTime.Now, TimeSpan.FromDays(20));

            var en = dtrange.Enumerate(TimespanType.Day, 1).ToList();

            //var nit2Range = new[]
            //{
            //    1, 2, 3, 4, 6, 7
            //};

            //var nRange = IntegerRange.FromEnumerable(nit2Range).ToList();

            //var intRanges = new[]
            //{
            //    new IntegerRange(1,2),
            //    new IntegerRange(3,4),
            //    new IntegerRange(6,7),
            //};

            //var intIntersection = intRanges.MergeIntersecting(1);

            //var method = typeof(TimeSpan).GetMethods()
            //    .Where(x => x.IsSpecialName && x.Name == "op_Subtraction" && x.GetParameters().Select(m => m.ParameterType).SequenceEqual(new[] { typeof(TimeSpan), typeof(TimeSpan) }))
            //    .ToList();

            //PerformanceTests();

            var timeRanges = new[]
            {
                new TimeSpanRange(TimeSpan.FromMinutes(1), TimeSpan.FromMinutes(2)),
                new TimeSpanRange(TimeSpan.FromMinutes(3), TimeSpan.FromMinutes(4)),
                new TimeSpanRange(TimeSpan.FromMinutes(6), TimeSpan.FromMinutes(7)),
            };

            var timeIntersection = timeRanges.MergeIntersecting(TimeSpan.FromMinutes(1));
        }