Esempio n. 1
0
        public static SolutionParser Create()
        {
            // Create the object tree without DI Framework
            var lexerRules = new LexerRules();
            var tokenizer  = new Tokenizer(
                lexerRules: lexerRules,
                newLexerReader: s => new LexerReader(s),
                newLinePositionCalculator: l => new LinePositionCalculator(l));
            var tokenWalker = new TokenWalker(
                tokenizer: tokenizer,
                newEpsilonToken: () => new EpsilonToken(),
                newLinePositionCalculator: l => new LinePositionCalculator(l));
            var variableParser      = new VariableParser();
            var headerParser        = new HeaderParser(variableParser);
            var projectParser       = new ProjectParser();
            var globalSectionParser = new GlobalSectionParser();

            return(new SolutionParser(tokenWalker, headerParser, projectParser, globalSectionParser));
        }