public SwedishCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new SwedishDatetimeUtilityConfiguration();

            UnitMap                = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap           = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap              = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            SpecialYearPrefixesMap = DateTimeDefinitions.SpecialYearPrefixesMap.ToImmutableDictionary();
            CardinalMap            = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek              = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear            = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers                = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers          = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();
            WrittenDecades         = DateTimeDefinitions.WrittenDecades.ToImmutableDictionary();
            SpecialDecadeCases     = DateTimeDefinitions.SpecialDecadeCases.ToImmutableDictionary();

            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            CardinalExtractor = Number.Swedish.CardinalExtractor.GetInstance(numConfig);
            IntegerExtractor  = Number.Swedish.IntegerExtractor.GetInstance(numConfig);
            OrdinalExtractor  = Number.Swedish.OrdinalExtractor.GetInstance(numConfig);

            NumberParser = new BaseNumberParser(new SwedishNumberParserConfiguration(numConfig));

            TimeZoneParser = new BaseTimeZoneParser(new SwedishTimeZoneParserConfiguration(this));

            // Do not change order. The order of initialization can lead to side-effects
            DateExtractor           = new BaseDateExtractor(new SwedishDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new SwedishTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new SwedishDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new SwedishDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new SwedishDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new SwedishTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SwedishDateTimePeriodExtractorConfiguration(this));

            DurationParser       = new BaseDurationParser(new SwedishDurationParserConfiguration(this));
            DateParser           = new BaseDateParser(new SwedishDateParserConfiguration(this));
            TimeParser           = new TimeParser(new SwedishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new SwedishDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new SwedishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SwedishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SwedishDateTimePeriodParserConfiguration(this));

            DateTimeAltParser = new BaseDateTimeAltParser(new SwedishDateTimeAltParserConfiguration(this));
        }
コード例 #2
0
 public FrenchMergedParserConfiguration(DateTimeOptions options) : base(options)
 {
     BeforeRegex            = FrenchMergedExtractorConfiguration.BeforeRegex;
     AfterRegex             = FrenchMergedExtractorConfiguration.AfterRegex;
     SinceRegex             = FrenchMergedExtractorConfiguration.SinceRegex;
     YearAfterRegex         = FrenchMergedExtractorConfiguration.YearAfterRegex;
     SuperfluousWordMatcher = FrenchMergedExtractorConfiguration.SuperfluousWordMatcher;
     YearRegex      = FrenchDatePeriodExtractorConfiguration.YearRegex;
     SetParser      = new BaseSetParser(new FrenchSetParserConfiguration(this));
     HolidayParser  = new BaseHolidayParser(new FrenchHolidayParserConfiguration());
     TimeZoneParser = new BaseTimeZoneParser();
 }
        public HindiCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new HindiDatetimeUtilityConfiguration();

            UnitMap                = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap           = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap              = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            SpecialYearPrefixesMap = DateTimeDefinitions.SpecialYearPrefixesMap.ToImmutableDictionary();
            CardinalMap            = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek              = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear            = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers                = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers          = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();
            WrittenDecades         = DateTimeDefinitions.WrittenDecades.ToImmutableDictionary();
            SpecialDecadeCases     = DateTimeDefinitions.SpecialDecadeCases.ToImmutableDictionary();

            var numOptions = NumberOptions.None;

            if ((config.Options & DateTimeOptions.NoProtoCache) != 0)
            {
                numOptions = NumberOptions.NoProtoCache;
            }

            var numConfig = new BaseNumberOptionsConfiguration(config.Culture, numOptions);

            CardinalExtractor = Number.Hindi.CardinalExtractor.GetInstance();
            IntegerExtractor  = Number.Hindi.IntegerExtractor.GetInstance();
            OrdinalExtractor  = Number.Hindi.OrdinalExtractor.GetInstance();

            NumberParser = new BaseIndianNumberParser(new HindiNumberParserConfiguration(numConfig));

            TimeZoneParser = new BaseTimeZoneParser();

            DateExtractor           = new BaseDateExtractor(new HindiDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new HindiTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new HindiDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new HindiDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new HindiDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new HindiTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new HindiDateTimePeriodExtractorConfiguration(this));
            DurationParser          = new BaseDurationParser(new HindiDurationParserConfiguration(this));
            DateParser           = new BaseDateParser(new HindiDateParserConfiguration(this));
            TimeParser           = new TimeParser(new HindiTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new HindiDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new HindiDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new HindiTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new HindiDateTimePeriodParserConfiguration(this));
            DateTimeAltParser    = new BaseDateTimeAltParser(new HindiDateTimeAltParserConfiguration(this));
        }
コード例 #4
0
 public GermanMergedParserConfiguration(DateTimeOptions options) : base(options)
 {
     BeforeRegex            = GermanMergedExtractorConfiguration.BeforeRegex;
     AfterRegex             = GermanMergedExtractorConfiguration.AfterRegex;
     SinceRegex             = GermanMergedExtractorConfiguration.SinceRegex;
     YearAfterRegex         = GermanMergedExtractorConfiguration.YearAfterRegex;
     YearRegex              = GermanDatePeriodExtractorConfiguration.YearRegex;
     SuperfluousWordMatcher = GermanMergedExtractorConfiguration.SuperfluousWordMatcher;
     DatePeriodParser       = new BaseDatePeriodParser(new GermanDatePeriodParserConfiguration(this));
     TimePeriodParser       = new BaseTimePeriodParser(new GermanTimePeriodParserConfiguration(this));
     DateTimePeriodParser   = new BaseDateTimePeriodParser(new GermanDateTimePeriodParserConfiguration(this));
     SetParser              = new BaseSetParser(new GermanSetParserConfiguration(this));
     HolidayParser          = new BaseHolidayParser(new GermanHolidayParserConfiguration());
     TimeZoneParser         = new BaseTimeZoneParser();
 }
        public SpanishMergedParserConfiguration(IOptionsConfiguration config) : base(config)
        {
            BeforeRegex            = SpanishMergedExtractorConfiguration.BeforeRegex;
            AfterRegex             = SpanishMergedExtractorConfiguration.AfterRegex;
            SinceRegex             = SpanishMergedExtractorConfiguration.SinceRegex;
            YearAfterRegex         = SpanishMergedExtractorConfiguration.YearAfterRegex;
            YearRegex              = SpanishDatePeriodExtractorConfiguration.YearRegex;
            SuperfluousWordMatcher = SpanishMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new DateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new SpanishSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new SpanishHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser();
        }
コード例 #6
0
 public ItalianMergedParserConfiguration(IOptionsConfiguration options) : base(options)
 {
     BeforeRegex            = ItalianMergedExtractorConfiguration.BeforeRegex;
     AfterRegex             = ItalianMergedExtractorConfiguration.AfterRegex;
     SinceRegex             = ItalianMergedExtractorConfiguration.SinceRegex;
     AroundRegex            = ItalianMergedExtractorConfiguration.AroundRegex;
     DateAfter              = ItalianMergedExtractorConfiguration.DateAfterRegex;
     YearRegex              = ItalianDatePeriodExtractorConfiguration.YearRegex;
     SuperfluousWordMatcher = ItalianMergedExtractorConfiguration.SuperfluousWordMatcher;
     DatePeriodParser       = new BaseDatePeriodParser(new ItalianDatePeriodParserConfiguration(this));
     TimePeriodParser       = new BaseTimePeriodParser(new ItalianTimePeriodParserConfiguration(this));
     DateTimePeriodParser   = new BaseDateTimePeriodParser(new ItalianDateTimePeriodParserConfiguration(this));
     SetParser              = new BaseSetParser(new ItalianSetParserConfiguration(this));
     HolidayParser          = new BaseHolidayParser(new ItalianHolidayParserConfiguration(this));
     TimeZoneParser         = new BaseTimeZoneParser();
 }
コード例 #7
0
        public ThaiMergedParserConfiguration(DateTimeOptions options) : base(options | DateTimeOptions.Format24)
        {
            BeforeRegex            = ThaiMergedExtractorConfiguration.BeforeRegex;
            AfterRegex             = ThaiMergedExtractorConfiguration.AfterRegex;
            SinceRegex             = ThaiMergedExtractorConfiguration.SinceRegex;
            YearAfterRegex         = ThaiMergedExtractorConfiguration.YearAfterRegex;
            YearRegex              = ThaiDatePeriodExtractorConfiguration.YearRegex;
            SuperfluousWordMatcher = null;

            DatePeriodParser     = new BaseDatePeriodParser(new ThaiDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new ThaiTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new ThaiDateTimePeriodParserConfiguration(this));
            GetParser            = null;
            HolidayParser        = null;
            TimeZoneParser       = new BaseTimeZoneParser();
        }
コード例 #8
0
        public TurkishMergedParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            AroundRegex = TurkishMergedExtractorConfiguration.AroundRegex;
            EqualRegex  = TurkishMergedExtractorConfiguration.EqualRegex;
            SuffixAfter = TurkishMergedExtractorConfiguration.SuffixAfterRegex;
            YearRegex   = TurkishDatePeriodExtractorConfiguration.YearRegex;

            SuperfluousWordMatcher = TurkishMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new TurkishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new TurkishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new TurkishDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new TurkishSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new TurkishHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser(new TurkishTimeZoneParserConfiguration(this));
        }
コード例 #9
0
        public PortugueseMergedParserConfiguration(IOptionsConfiguration config) : base(config)
        {
            BeforeRegex            = PortugueseMergedExtractorConfiguration.BeforeRegex;
            AfterRegex             = PortugueseMergedExtractorConfiguration.AfterRegex;
            SinceRegex             = PortugueseMergedExtractorConfiguration.SinceRegex;
            AroundRegex            = PortugueseMergedExtractorConfiguration.AroundRegex;
            DateAfter              = PortugueseMergedExtractorConfiguration.DateAfterRegex;
            YearRegex              = PortugueseDatePeriodExtractorConfiguration.YearRegex;
            SuperfluousWordMatcher = PortugueseMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new PortugueseDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new PortugueseTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new DateTimePeriodParser(new PortugueseDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new PortugueseSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new PortugueseHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser();
        }
コード例 #10
0
        public DutchMergedParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            BeforeRegex            = DutchMergedExtractorConfiguration.BeforeRegex;
            AfterRegex             = DutchMergedExtractorConfiguration.AfterRegex;
            SinceRegex             = DutchMergedExtractorConfiguration.SinceRegex;
            AroundRegex            = DutchMergedExtractorConfiguration.AroundRegex;
            EqualRegex             = DutchMergedExtractorConfiguration.EqualRegex;
            SuffixAfter            = DutchMergedExtractorConfiguration.SuffixAfterRegex;
            YearRegex              = DutchDatePeriodExtractorConfiguration.YearRegex;
            SuperfluousWordMatcher = DutchMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new DutchDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new DutchTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new DutchDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new DutchSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new DutchHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser();
        }
コード例 #11
0
        public SwedishMergedParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            BeforeRegex = SwedishMergedExtractorConfiguration.BeforeRegex;
            AfterRegex  = SwedishMergedExtractorConfiguration.AfterRegex;
            SinceRegex  = (config.Options & DateTimeOptions.ExperimentalMode) != 0 ? SwedishMergedExtractorConfiguration.SinceRegexExp :
                          SwedishMergedExtractorConfiguration.SinceRegex;
            AroundRegex = SwedishMergedExtractorConfiguration.AroundRegex;
            EqualRegex  = SwedishMergedExtractorConfiguration.EqualRegex;
            SuffixAfter = SwedishMergedExtractorConfiguration.SuffixAfterRegex;
            YearRegex   = SwedishDatePeriodExtractorConfiguration.YearRegex;

            SuperfluousWordMatcher = SwedishMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new SwedishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SwedishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SwedishDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new SwedishSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new SwedishHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser(new SwedishTimeZoneParserConfiguration(this));
        }
コード例 #12
0
        public EnglishCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new EnglishDatetimeUtilityConfiguration();

            UnitMap                = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap           = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
            SeasonMap              = DateTimeDefinitions.SeasonMap.ToImmutableDictionary();
            SpecialYearPrefixesMap = DateTimeDefinitions.SpecialYearPrefixesMap.ToImmutableDictionary();
            CardinalMap            = DateTimeDefinitions.CardinalMap.ToImmutableDictionary();
            DayOfWeek              = DateTimeDefinitions.DayOfWeek.ToImmutableDictionary();
            MonthOfYear            = DateTimeDefinitions.MonthOfYear.ToImmutableDictionary();
            Numbers                = DateTimeDefinitions.Numbers.ToImmutableDictionary();
            DoubleNumbers          = DateTimeDefinitions.DoubleNumbers.ToImmutableDictionary();
            WrittenDecades         = DateTimeDefinitions.WrittenDecades.ToImmutableDictionary();
            SpecialDecadeCases     = DateTimeDefinitions.SpecialDecadeCases.ToImmutableDictionary();

            CardinalExtractor = Number.English.CardinalExtractor.GetInstance();
            IntegerExtractor  = Number.English.IntegerExtractor.GetInstance();
            OrdinalExtractor  = Number.English.OrdinalExtractor.GetInstance();

            TimeZoneParser          = new BaseTimeZoneParser();
            NumberParser            = new BaseNumberParser(new EnglishNumberParserConfiguration(new BaseNumberOptionsConfiguration(config.Culture)));
            DateExtractor           = new BaseDateExtractor(new EnglishDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new EnglishTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new EnglishDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new EnglishDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new EnglishDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new EnglishTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new EnglishDateTimePeriodExtractorConfiguration(this));
            DurationParser          = new BaseDurationParser(new EnglishDurationParserConfiguration(this));
            DateParser           = new BaseDateParser(new EnglishDateParserConfiguration(this));
            TimeParser           = new TimeParser(new EnglishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new EnglishDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new EnglishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new EnglishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new EnglishDateTimePeriodParserConfiguration(this));
            DateTimeAltParser    = new BaseDateTimeAltParser(new EnglishDateTimeAltParserConfiguration(this));
        }