clojure.lang.CljCompiler.Ast.GenContext.MaybeAddDebugInfo C# (CSharp) Method

MaybeAddDebugInfo() public method

public MaybeAddDebugInfo ( Expression expr, IPersistentMap spanMap ) : Expression
expr Expression
spanMap IPersistentMap
return Expression
        public Expression MaybeAddDebugInfo(Expression expr, IPersistentMap spanMap)
        {
            if (_isDebuggable && spanMap != null & _docInfo != null)
            {
                int startLine;
                int startCol;
                int finishLine;
                int finishCol;
                if (Compiler.GetLocations(spanMap, out startLine, out startCol, out finishLine, out finishCol))
                    return AstUtils.AddDebugInfo(expr,
                        _docInfo,
                        new Microsoft.Scripting.SourceLocation(0, (int)spanMap.valAt(RT.StartLineKey), (int)spanMap.valAt(RT.StartColumnKey)),
                        new Microsoft.Scripting.SourceLocation(0, (int)spanMap.valAt(RT.EndLineKey), (int)spanMap.valAt(RT.EndColumnKey)));
            }
            return expr;
        }

Usage Example

Ejemplo n.º 1
0
        public static Expression AddDebugInfo(Expression expr, IPersistentMap spanMap)
        {
            GenContext context = Compiler.CompilerContextVar.deref() as GenContext;

            if (context == null)
            {
                return(expr);
            }

            return(context.MaybeAddDebugInfo(expr, spanMap));
        }