public MaybeAddDebugInfo ( Expression expr, IPersistentMap spanMap ) : Expression | ||
expr | Expression | |
spanMap | IPersistentMap | |
Результат | 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;
}
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)); }