public Compiler(IAstModuleLoader moduleLoader) { Context = new CompilerContext(moduleLoader); _astBuilder = new AstBuilder(Context); _resolveDefinition = new ResolveDefinition(Context); _checkRules = new CheckRules(Context); }
public void Symbols() { var file = Build.File(code); file.Should().NotBeNull(); var context = new CompilerContext(new ModuleLoader()); var typeResolver = new ResolveDefinition(context); typeResolver.Visit(file); context.Errors.PrintErrors(); context.HasErrors.Should().BeFalse(); var checker = new AstSymbolChecker(); checker.Visit(file); }