/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> /// <param name="statementCallback"> /// Callback executed when a statement is visited. /// </param> /// <param name="expressionCallback"> /// Callback executed when an expression is visited. /// </param> /// <param name="queryClauseCallback"> /// Callback executed when a query clause is visited. /// </param> public void WalkElement( CodeWalkerElementVisitor <object> elementCallback, CodeWalkerStatementVisitor <object> statementCallback, CodeWalkerExpressionVisitor <object> expressionCallback, CodeWalkerQueryClauseVisitor <object> queryClauseCallback) { Param.Ignore(elementCallback, statementCallback, expressionCallback, queryClauseCallback); CodeWalker <object> .Start(this, elementCallback, statementCallback, expressionCallback, queryClauseCallback, null); }
/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> /// <param name="statementCallback"> /// Callback executed when a statement is visited. /// </param> /// <param name="expressionCallback"> /// Callback executed when an expression is visited. /// </param> /// <param name="queryClauseCallback"> /// Callback executed when a query clause is visited. /// </param> /// <param name="context"> /// The optional visitor context data. /// </param> /// <typeparam name="T"> /// The type of the context item. /// </typeparam> public void WalkElement <T>( CodeWalkerElementVisitor <T> elementCallback, CodeWalkerStatementVisitor <T> statementCallback, CodeWalkerExpressionVisitor <T> expressionCallback, CodeWalkerQueryClauseVisitor <T> queryClauseCallback, T context) { Param.Ignore(elementCallback, statementCallback, expressionCallback, queryClauseCallback, context); CodeWalker <T> .Start(this, elementCallback, statementCallback, expressionCallback, queryClauseCallback, context); }
public static void Start( CsElement element, CodeWalkerElementVisitor <T> elementCallback, CodeWalkerStatementVisitor <T> statementCallback, CodeWalkerExpressionVisitor <T> expressionCallback, CodeWalkerQueryClauseVisitor <T> queryClauseCallback, T context) { Param.AssertNotNull(element, "element"); Param.Ignore(elementCallback); Param.Ignore(statementCallback); Param.Ignore(expressionCallback); Param.Ignore(queryClauseCallback); Param.Ignore(context); new CodeWalker <T>(element, elementCallback, statementCallback, expressionCallback, queryClauseCallback, context); }
/// <summary> /// Initializes a new instance of the CodeWalker class. /// </summary> /// <param name="element">The element to walk through.</param> /// <param name="elementCallback">Callback executed when an element is visited.</param> /// <param name="statementCallback">Callback executed when a statement is visited.</param> /// <param name="expressionCallback">Callback executed when an expression is visited.</param> /// <param name="queryClauseCallback">Callback executed when a query clause is visited.</param> /// <param name="context">The optional visitor context data.</param> private CodeWalker( CsElement element, CodeWalkerElementVisitor <T> elementCallback, CodeWalkerStatementVisitor <T> statementCallback, CodeWalkerExpressionVisitor <T> expressionCallback, CodeWalkerQueryClauseVisitor <T> queryClauseCallback, T context) { Param.AssertNotNull(element, "element"); Param.Ignore(elementCallback); Param.Ignore(statementCallback); Param.Ignore(expressionCallback); Param.Ignore(queryClauseCallback); Param.Ignore(context); this.elementCallback = elementCallback; this.statementCallback = statementCallback; this.expressionCallback = expressionCallback; this.queryClauseCallback = queryClauseCallback; this.WalkElement(element, element.FindParentElement(), context); }
/// <summary> /// Initializes a new instance of the CodeWalker class. /// </summary> /// <param name="document">The document to walk through.</param> /// <param name="elementCallback">Callback executed when an element is visited.</param> /// <param name="statementCallback">Callback executed when a statement is visited.</param> /// <param name="expressionCallback">Callback executed when an expression is visited.</param> /// <param name="queryClauseCallback">Callback executed when a query clause is visited.</param> /// <param name="context">The optional visitor context data.</param> private CodeWalker( CsDocument document, CodeWalkerElementVisitor <T> elementCallback, CodeWalkerStatementVisitor <T> statementCallback, CodeWalkerExpressionVisitor <T> expressionCallback, CodeWalkerQueryClauseVisitor <T> queryClauseCallback, T context) { Param.AssertNotNull(document, "document"); Param.Ignore(elementCallback); Param.Ignore(statementCallback); Param.Ignore(expressionCallback); Param.Ignore(queryClauseCallback); Param.Ignore(context); this.elementCallback = elementCallback; this.statementCallback = statementCallback; this.expressionCallback = expressionCallback; this.queryClauseCallback = queryClauseCallback; this.WalkElement(document.RootElement, null, context); }
/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> public void WalkElement(CodeWalkerElementVisitor <object> elementCallback) { Param.Ignore(elementCallback); this.WalkElement(elementCallback, null, null, null, null); }
/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> /// <param name="statementCallback"> /// Callback executed when a statement is visited. /// </param> /// <param name="expressionCallback"> /// Callback executed when an expression is visited. /// </param> public void WalkElement( CodeWalkerElementVisitor <object> elementCallback, CodeWalkerStatementVisitor <object> statementCallback, CodeWalkerExpressionVisitor <object> expressionCallback) { Param.Ignore(elementCallback, statementCallback, expressionCallback); this.WalkElement(elementCallback, statementCallback, expressionCallback, null, null); }
/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> /// <param name="context"> /// The optional visitor context data. /// </param> /// <typeparam name="T"> /// The type of the context item. /// </typeparam> public void WalkElement <T>(CodeWalkerElementVisitor <T> elementCallback, T context) { Param.Ignore(elementCallback, context); this.WalkElement(elementCallback, null, null, null, context); }
/// <summary> /// Walks through the code units in the element. /// </summary> /// <param name="elementCallback"> /// Callback executed when an element is visited. /// </param> /// <param name="statementCallback"> /// Callback executed when a statement is visited. /// </param> /// <param name="expressionCallback"> /// Callback executed when an expression is visited. /// </param> /// <param name="context"> /// The optional visitor context data. /// </param> /// <typeparam name="T"> /// The type of the context item. /// </typeparam> public void WalkElement <T>( CodeWalkerElementVisitor <T> elementCallback, CodeWalkerStatementVisitor <T> statementCallback, CodeWalkerExpressionVisitor <T> expressionCallback, T context) { Param.Ignore(elementCallback, statementCallback, expressionCallback, context); this.WalkElement(elementCallback, statementCallback, expressionCallback, null, context); }