public Program(string[] args) { config = GetConfig(); ParseArgs(args); _lexParse = new LexParser(new ASTBuilder(new ExpressionHelper())); _referenceHandler = new ReferenceHandler(new ReferenceHelper(), !_shouldThrowExceptions); _typeChecker = new TypeChecker(new DeclarationHelper(), new NumberHelper(), new CommonOperatorHelper(), new TypeBooleanHelper(), new TypeSetHelper()); _interpreter = new Interpreter(new GenericHelper(), new FunctionHelper(), new IntegerHelper(), new RealHelper(), new InterpBooleanHelper(), new InterpreterSetHelper(), new ElementHelper(), new StringHelper(), new GraphHelper(), !_shouldThrowExceptions); _outputGenerator = _output == OutputLanguage.DOT ? (IOutputGenerator) new DotGenerator() : (IOutputGenerator) new GmlGenerator(); _fileGenerator = new FileGenerator(new FileHelper()); _exceptionPrinter = new ExceptionPrinter(); _fileReader = new FileReader(new FileHelper()); }
public ReferenceProcessor([NotNull] IReferenceHandler handler) { this.handler = Argument.NotNull("handler", handler); }