public static void Generate(DomainCodeAuthoringSettings settings, Compilation compilation, SymbolTable symbolTable, TextWriter target)
        {
            Guard.NotNull(settings, nameof(settings));
            Guard.NotNull(compilation, nameof(compilation));
            Guard.NotNull(symbolTable, nameof(symbolTable));
            Guard.NotNull(target, nameof(target));

            var visitor = new CompilationCodeAuthoringVisitor(target, symbolTable, settings);
            visitor.Dispatch(compilation);
        }
 public ValueCodeAuthoringVisitor(IndentingTextWriter writer, SymbolTable symbolTable, DomainCodeAuthoringSettings settings) 
     : base(writer, symbolTable, settings)
 {
 }
 public ApplyAggregateEventCodeAuthoringVisitor(IndentingTextWriter writer, SymbolTable symbolTable, DomainCodeAuthoringSettings settings) : base(writer, symbolTable, settings)
 {
 }