示例#1
0
 public FrenchMergedParserConfiguration(IDateTimeOptionsConfiguration config)
     : base(config)
 {
     BeforeRegex            = FrenchMergedExtractorConfiguration.BeforeRegex;
     AfterRegex             = FrenchMergedExtractorConfiguration.AfterRegex;
     SinceRegex             = FrenchMergedExtractorConfiguration.SinceRegex;
     AroundRegex            = FrenchMergedExtractorConfiguration.AroundRegex;
     EqualRegex             = FrenchMergedExtractorConfiguration.EqualRegex;
     SuffixAfter            = FrenchMergedExtractorConfiguration.SuffixAfterRegex;
     YearRegex              = FrenchDatePeriodExtractorConfiguration.YearRegex;
     SuperfluousWordMatcher = FrenchMergedExtractorConfiguration.SuperfluousWordMatcher;
     SetParser              = new BaseSetParser(new FrenchSetParserConfiguration(this));
     HolidayParser          = new BaseHolidayParser(new FrenchHolidayParserConfiguration(this));
     TimeZoneParser         = new DummyTimeZoneParser();
 }
示例#2
0
        public KoreanMergedExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            AmbiguityFiltersDict = DefinitionLoader.LoadAmbiguityFilters(DateTimeDefinitions.AmbiguityFiltersDict);

            DateExtractor           = new BaseCJKDateExtractor(new KoreanDateExtractorConfiguration(this));
            TimeExtractor           = new BaseCJKTimeExtractor(new KoreanTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseCJKDateTimeExtractor(new KoreanDateTimeExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseCJKDatePeriodExtractor(new KoreanDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseCJKTimePeriodExtractor(new KoreanTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseCJKDateTimePeriodExtractor(new KoreanDateTimePeriodExtractorConfiguration(this));
            DurationExtractor       = new BaseCJKDurationExtractor(new KoreanDurationExtractorConfiguration(this));
            SetExtractor            = new BaseCJKSetExtractor(new KoreanSetExtractorConfiguration(this));
            HolidayExtractor        = new BaseCJKHolidayExtractor(new KoreanHolidayExtractorConfiguration(this));
        }
示例#3
0
        public SpanishCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new SpanishDatetimeUtilityConfiguration();

            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.Spanish.CardinalExtractor.GetInstance(numConfig);
            IntegerExtractor  = Number.Spanish.IntegerExtractor.GetInstance(numConfig);
            OrdinalExtractor  = Number.Spanish.OrdinalExtractor.GetInstance(numConfig);

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

            DateExtractor           = new BaseDateExtractor(new SpanishDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new SpanishTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new SpanishDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new SpanishDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new SpanishDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new SpanishTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new SpanishDateTimePeriodExtractorConfiguration(this));
            DateParser           = new BaseDateParser(new SpanishDateParserConfiguration(this));
            TimeParser           = new BaseTimeParser(new SpanishTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(this));
            DurationParser       = new BaseDurationParser(new SpanishDurationParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(this));
            DateTimeAltParser    = new BaseDateTimeAltParser(new SpanishDateTimeAltParserConfiguration(this));
        }
示例#4
0
 public FrenchMergedExtractorConfiguration(IDateTimeOptionsConfiguration config)
     : base(config)
 {
     DateExtractor           = new BaseDateExtractor(new FrenchDateExtractorConfiguration(this));
     TimeExtractor           = new BaseTimeExtractor(new FrenchTimeExtractorConfiguration(this));
     DateTimeExtractor       = new BaseDateTimeExtractor(new FrenchDateTimeExtractorConfiguration(this));
     DatePeriodExtractor     = new BaseDatePeriodExtractor(new FrenchDatePeriodExtractorConfiguration(this));
     TimePeriodExtractor     = new BaseTimePeriodExtractor(new FrenchTimePeriodExtractorConfiguration(this));
     DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new FrenchDateTimePeriodExtractorConfiguration(this));
     DurationExtractor       = new BaseDurationExtractor(new FrenchDurationExtractorConfiguration(this));
     SetExtractor            = new BaseSetExtractor(new FrenchSetExtractorConfiguration(this));
     HolidayExtractor        = new BaseHolidayExtractor(new FrenchHolidayExtractorConfiguration(this));
     TimeZoneExtractor       = new BaseTimeZoneExtractor(new FrenchTimeZoneExtractorConfiguration(this));
     DateTimeAltExtractor    = new BaseDateTimeAltExtractor(new FrenchDateTimeAltExtractorConfiguration(this));
     IntegerExtractor        = Number.French.IntegerExtractor.GetInstance();
 }
示例#5
0
        public ChineseDatePeriodExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            DatePointExtractor = new BaseCJKDateExtractor(new ChineseDateExtractorConfiguration(this));

            var numOptions = NumberOptions.None;

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

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

            IntegerExtractor = new IntegerExtractor(numConfig);
        }
示例#6
0
        public FrenchDurationExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            var numOptions = NumberOptions.None;

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

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

            CardinalExtractor = Number.French.CardinalExtractor.GetInstance(numConfig);
            UnitMap           = DateTimeDefinitions.UnitMap.ToImmutableDictionary();
            UnitValueMap      = DateTimeDefinitions.UnitValueMap.ToImmutableDictionary();
        }
 public PortugueseMergedExtractorConfiguration(IDateTimeOptionsConfiguration config)
     : base(config)
 {
     DateExtractor           = new BaseDateExtractor(new PortugueseDateExtractorConfiguration(this));
     TimeExtractor           = new BaseTimeExtractor(new PortugueseTimeExtractorConfiguration(this));
     DateTimeExtractor       = new BaseDateTimeExtractor(new PortugueseDateTimeExtractorConfiguration(this));
     DatePeriodExtractor     = new BaseDatePeriodExtractor(new PortugueseDatePeriodExtractorConfiguration(this));
     TimePeriodExtractor     = new BaseTimePeriodExtractor(new PortugueseTimePeriodExtractorConfiguration(this));
     DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new PortugueseDateTimePeriodExtractorConfiguration(this));
     DurationExtractor       = new BaseDurationExtractor(new PortugueseDurationExtractorConfiguration(this));
     SetExtractor            = new BaseSetExtractor(new PortugueseSetExtractorConfiguration(this));
     HolidayExtractor        = new BaseHolidayExtractor(new PortugueseHolidayExtractorConfiguration(this));
     TimeZoneExtractor       = new BaseTimeZoneExtractor(new PortugueseTimeZoneExtractorConfiguration(this));
     IntegerExtractor        = Number.Portuguese.IntegerExtractor.GetInstance();
     DateTimeAltExtractor    = new BaseDateTimeAltExtractor(new PortugueseDateTimeAltExtractorConfiguration(this));
 }
 public ItalianMergedExtractorConfiguration(IDateTimeOptionsConfiguration config)
     : base(config)
 {
     DateExtractor           = new BaseDateExtractor(new ItalianDateExtractorConfiguration(this));
     TimeExtractor           = new BaseTimeExtractor(new ItalianTimeExtractorConfiguration(this));
     DateTimeExtractor       = new BaseDateTimeExtractor(new ItalianDateTimeExtractorConfiguration(this));
     DatePeriodExtractor     = new BaseDatePeriodExtractor(new ItalianDatePeriodExtractorConfiguration(this));
     TimePeriodExtractor     = new BaseTimePeriodExtractor(new ItalianTimePeriodExtractorConfiguration(this));
     DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new ItalianDateTimePeriodExtractorConfiguration(this));
     DurationExtractor       = new BaseDurationExtractor(new ItalianDurationExtractorConfiguration(this));
     SetExtractor            = new BaseSetExtractor(new ItalianSetExtractorConfiguration(this));
     HolidayExtractor        = new BaseHolidayExtractor(new ItalianHolidayExtractorConfiguration(this));
     TimeZoneExtractor       = new BaseTimeZoneExtractor(new ItalianTimeZoneExtractorConfiguration(this));
     DateTimeAltExtractor    = new BaseDateTimeAltExtractor(new ItalianDateTimeAltExtractorConfiguration(this));
     IntegerExtractor        = Number.Italian.IntegerExtractor.GetInstance();
 }
示例#9
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));
        }
示例#10
0
        public ChineseCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UnitMap      = DateTimeDefinitions.ParserConfigurationUnitMap.ToImmutableDictionary(k => k.Key, k => k.Value.Substring(0, 1) + k.Value.Substring(1).ToLower());
            UnitValueMap = DateTimeDefinitions.DurationUnitValueMap.ToImmutableDictionary();
            CardinalMap  = DateTimeDefinitions.ParserConfigurationCardinalMap.ToImmutableDictionary();
            DayOfMonth   = DateTimeDefinitions.ParserConfigurationDayOfMonth.ToImmutableDictionary();
            DayOfWeek    = DateTimeDefinitions.ParserConfigurationDayOfWeek.ToImmutableDictionary();
            MonthOfYear  = DateTimeDefinitions.ParserConfigurationMonthOfYear.ToImmutableDictionary();

            var numOptions = NumberOptions.None;

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

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

            IntegerExtractor  = new IntegerExtractor(numConfig);
            CardinalExtractor = new CardinalExtractor(numConfig);
            OrdinalExtractor  = new OrdinalExtractor(numConfig);

            NumberParser = new BaseCJKNumberParser(new ChineseNumberParserConfiguration(numConfig));

            // Do not change order. The order of initialization can lead to side-effects
            DateExtractor           = new BaseCJKDateExtractor(new ChineseDateExtractorConfiguration(this));
            TimeExtractor           = new BaseCJKTimeExtractor(new ChineseTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseCJKDateTimeExtractor(new ChineseDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseCJKDurationExtractor(new ChineseDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseCJKDatePeriodExtractor(new ChineseDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseCJKTimePeriodExtractor(new ChineseTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseCJKDateTimePeriodExtractor(new ChineseDateTimePeriodExtractorConfiguration(this));
            HolidayExtractor        = new BaseCJKDurationExtractor(new ChineseDurationExtractorConfiguration(this));
            SetExtractor            = new BaseCJKDurationExtractor(new ChineseDurationExtractorConfiguration(this));

            DurationParser       = new BaseCJKDurationParser(new ChineseDurationParserConfiguration(this));
            DateParser           = new BaseCJKDateParser(new ChineseDateParserConfiguration(this));
            TimeParser           = new BaseCJKTimeParser(new ChineseTimeParserConfiguration(this));
            DateTimeParser       = new BaseCJKDateTimeParser(new ChineseDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseCJKDatePeriodParser(new ChineseDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseCJKTimePeriodParser(new ChineseTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseCJKDateTimePeriodParser(new ChineseDateTimePeriodParserConfiguration(this));
            HolidayParser        = new BaseCJKHolidayParser(new ChineseHolidayParserConfiguration(this));
            SetParser            = new BaseCJKSetParser(new ChineseSetParserConfiguration(this));
        }
示例#11
0
        public ItalianMergedExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            DateExtractor           = new BaseDateExtractor(new ItalianDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new ItalianTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new ItalianDateTimeExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new ItalianDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new ItalianTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new ItalianDateTimePeriodExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new ItalianDurationExtractorConfiguration(this));
            SetExtractor            = new BaseSetExtractor(new ItalianSetExtractorConfiguration(this));
            HolidayExtractor        = new BaseHolidayExtractor(new ItalianHolidayExtractorConfiguration(this));
            TimeZoneExtractor       = new BaseTimeZoneExtractor(new ItalianTimeZoneExtractorConfiguration(this));
            DateTimeAltExtractor    = new BaseDateTimeAltExtractor(new ItalianDateTimeAltExtractorConfiguration(this));
            IntegerExtractor        = Number.Italian.IntegerExtractor.GetInstance();

            AmbiguityFiltersDict = DefinitionLoader.LoadAmbiguityFilters(DateTimeDefinitions.AmbiguityFiltersDict);
        }
示例#12
0
        public ArabicTimePeriodExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            TokenBeforeDate      = DateTimeDefinitions.TokenBeforeDate;
            SingleTimeExtractor  = new BaseTimeExtractor(new ArabicTimeExtractorConfiguration(this));
            UtilityConfiguration = new ArabicDatetimeUtilityConfiguration();

            var numOptions = NumberOptions.None;

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

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

            IntegerExtractor = Number.Arabic.IntegerExtractor.GetInstance(numConfig);
        }
示例#13
0
        public HindiMergedParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            BeforeRegex = HindiMergedExtractorConfiguration.BeforeRegex;
            AfterRegex  = HindiMergedExtractorConfiguration.AfterRegex;
            SinceRegex  = HindiMergedExtractorConfiguration.SinceRegex;
            AroundRegex = HindiMergedExtractorConfiguration.AroundRegex;
            EqualRegex  = HindiMergedExtractorConfiguration.EqualRegex;
            SuffixAfter = HindiMergedExtractorConfiguration.SuffixAfterRegex;
            YearRegex   = HindiDatePeriodExtractorConfiguration.YearRegex;

            SuperfluousWordMatcher = HindiMergedExtractorConfiguration.SuperfluousWordMatcher;

            DatePeriodParser     = new BaseDatePeriodParser(new HindiDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new HindiTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new HindiDateTimePeriodParserConfiguration(this));
            SetParser            = new BaseSetParser(new HindiSetParserConfiguration(this));
            HolidayParser        = new BaseHolidayParser(new HindiHolidayParserConfiguration(this));
            TimeZoneParser       = new BaseTimeZoneParser(new HindiTimeZoneParserConfiguration(this));
        }
        public ChineseTimeExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            var regexes = new Dictionary <Regex, TimeType>
            {
                {
                    new Regex(DateTimeDefinitions.TimeRegexes1, RegexFlags),
                    TimeType.CjkTime
                },
                {
                    new Regex(DateTimeDefinitions.TimeRegexes2, RegexFlags),
                    TimeType.DigitTime
                },
                {
                    new Regex(DateTimeDefinitions.TimeRegexes3, RegexFlags),
                    TimeType.LessTime
                },
            };

            Regexes = regexes.ToImmutableDictionary();
        }
        public KoreanTimePeriodExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            var regexes = new Dictionary <Regex, PeriodType>
            {
                {
                    new Regex(DateTimeDefinitions.TimePeriodRegexes1, RegexFlags),
                    PeriodType.FullTime
                },
                {
                    new Regex(DateTimeDefinitions.TimePeriodRegexes2, RegexFlags),
                    PeriodType.ShortTime
                },
                {
                    new Regex(DateTimeDefinitions.TimeOfDayRegex, RegexFlags),
                    PeriodType.ShortTime
                },
            };

            Regexes = regexes.ToImmutableDictionary();
        }
示例#16
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));
        }
示例#17
0
        public FrenchCommonDateTimeParserConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            UtilityConfiguration = new FrenchDatetimeUtilityConfiguration();

            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.French.CardinalExtractor.GetInstance();
            IntegerExtractor  = Number.French.IntegerExtractor.GetInstance();
            OrdinalExtractor  = Number.French.OrdinalExtractor.GetInstance();

            NumberParser            = new BaseNumberParser(new FrenchNumberParserConfiguration(new BaseNumberOptionsConfiguration(config.Culture)));
            DateExtractor           = new BaseDateExtractor(new FrenchDateExtractorConfiguration(this));
            TimeExtractor           = new BaseTimeExtractor(new FrenchTimeExtractorConfiguration(this));
            DateTimeExtractor       = new BaseDateTimeExtractor(new FrenchDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new FrenchDurationExtractorConfiguration(this));
            DatePeriodExtractor     = new BaseDatePeriodExtractor(new FrenchDatePeriodExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new FrenchTimePeriodExtractorConfiguration(this));
            DateTimePeriodExtractor = new BaseDateTimePeriodExtractor(new FrenchDateTimePeriodExtractorConfiguration(this));

            // DurationParser should be assigned first, as DateParser would reference the DurationParser
            DurationParser       = new BaseDurationParser(new FrenchDurationParserConfiguration(this));
            DateParser           = new BaseDateParser(new FrenchDateParserConfiguration(this));
            TimeParser           = new BaseTimeParser(new FrenchTimeParserConfiguration(this));
            DateTimeParser       = new BaseDateTimeParser(new FrenchDateTimeParserConfiguration(this));
            DatePeriodParser     = new BaseDatePeriodParser(new FrenchDatePeriodParserConfiguration(this));
            TimePeriodParser     = new BaseTimePeriodParser(new FrenchTimePeriodParserConfiguration(this));
            DateTimePeriodParser = new BaseDateTimePeriodParser(new FrenchDateTimePeriodParserConfiguration(this));
            DateTimeAltParser    = new BaseDateTimeAltParser(new FrenchDateTimeAltParserConfiguration(this));
        }
        public ArabicDateTimePeriodExtractorConfiguration(IDateTimeOptionsConfiguration config)
            : base(config)
        {
            TokenBeforeDate = DateTimeDefinitions.TokenBeforeDate;

            var numOptions = NumberOptions.None;

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

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

            CardinalExtractor = Number.Arabic.CardinalExtractor.GetInstance(numConfig);

            SingleDateExtractor     = new BaseDateExtractor(new ArabicDateExtractorConfiguration(this));
            SingleTimeExtractor     = new BaseTimeExtractor(new ArabicTimeExtractorConfiguration(this));
            SingleDateTimeExtractor = new BaseDateTimeExtractor(new ArabicDateTimeExtractorConfiguration(this));
            DurationExtractor       = new BaseDurationExtractor(new ArabicDurationExtractorConfiguration(this));
            TimePeriodExtractor     = new BaseTimePeriodExtractor(new ArabicTimePeriodExtractorConfiguration(this));
        }
示例#19
0
        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();

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

            TimeZoneParser          = new BaseTimeZoneParser();
            NumberParser            = new BaseNumberParser(new HindiNumberParserConfiguration(new BaseNumberOptionsConfiguration(config.Culture)));
            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));
        }