/// <summary> /// Sets up the compiler instance with all needed components. /// </summary> /// <param name="loggerFactory">A logger factory to use to instantiate loggers.</param> public CobaltCompiler(ILoggerFactory loggerFactory, ITargetCodeGenerator compilerBackend) { Logger = loggerFactory.CreateLogger <CobaltCompiler>(); Lexer = new CobaltLexer(loggerFactory); Parser = new CobaltParser(loggerFactory); Optimizer = new CobaltOptimizer(loggerFactory); Analyzer = new CobaltSemanticAnalyzer(loggerFactory); TargetCodeGenerator = compilerBackend; }
public SemanticAnalysisTests() { Analyzer = new CobaltSemanticAnalyzer(new NullLoggerFactory()); }