/// <summary> /// /// </summary> /// <param name="expression"></param> /// <returns></returns> protected string WriteNeutralFromAST(IExpression expression) { Contract.Requires(expression != null); var sourceEmitterOutput = new SourceEmitterOutputString(); var sourceEmitter = new NeutralSourceEmitter(sourceEmitterOutput); var es = new ExpressionSimplifier(); expression = es.Rewrite(expression); sourceEmitter.Traverse(expression); return(sourceEmitterOutput.Data); }
/// <summary> /// /// </summary> /// <param name="expression"></param> /// <returns></returns> protected string WriteNeutralFromAST(IExpression expression) { Contract.Requires(expression != null); var sourceEmitterOutput = new SourceEmitterOutputString(); var sourceEmitter = new NeutralSourceEmitter(sourceEmitterOutput); var es = new ExpressionSimplifier(); expression = es.Rewrite(expression); sourceEmitter.Traverse(expression); return sourceEmitterOutput.Data; }