Beispiel #1
0
        public static IReadOnlyList <Modifier> Parse(IParser parser, IEnumerable <IGivenStats> givenStats)
        {
            var modifierSource = new ModifierSource.Global(new ModifierSource.Local.Given());
            var givenParser    = new GivenStatsParser(parser, modifierSource);

            foreach (var given in givenStats)
            {
                givenParser.Parse(given);
            }
            return(givenParser._modifiers);
        }
        public static IReadOnlyList <Modifier> Parse(ICoreParser coreParser, IEnumerable <IGivenStats> givenStats)
        {
            var givenParser = new GivenStatsParser(coreParser);

            return(givenStats.SelectMany(givenParser.ParseToModifiers).ToList());
        }
Beispiel #3
0
 public IEnumerable <Func <IReadOnlyList <Modifier> > > CreateGivenModifierParseDelegates()
 => _givenStats.Select <IGivenStats, Func <IReadOnlyList <Modifier> > >(
     g => () => GivenStatsParser.Parse(_coreParser, g));
Beispiel #4
0
 public IReadOnlyList <Modifier> ParseGivenModifiers()
 => GivenStatsParser.Parse(_coreParser, _givenStats);