TimeitVisitor
extends NodeVisitorAbstract
in package
A node visitor for instrumenting code to be executed by the `timeit` command.
Injects TimeitCommand::markStart() at the start of code to be executed, and
TimeitCommand::markEnd() at the end, and on top-level return statements.
Table of Contents
- $functionDepth : mixed
- afterTraverse() : null|array<string|int, Node>
- Called once after traversal.
- beforeTraverse() : null|array<string|int, Node>
- Called once before traversal.
- enterNode() : null|int|Node
- Called when entering a node.
- leaveNode() : null|int|Node|array<string|int, Node>
- Called when leaving a node.
- getEndCall() : StaticCall
- Get PhpParser AST nodes for a `markEnd` call.
- getStartCall() : StaticCall
- Get PhpParser AST nodes for a `markStart` call.
- maybeExpression() : Expr|Expression
- Compatibility shim for PHP Parser 3.x.
Properties
$functionDepth
private
mixed
$functionDepth
Methods
afterTraverse()
Called once after traversal.
public
afterTraverse(array<string|int, mixed> $nodes) : null|array<string|int, Node>
Parameters
- $nodes : array<string|int, mixed>
-
Array of nodes
Return values
null|array<string|int, Node> —Array of nodes
beforeTraverse()
Called once before traversal.
public
beforeTraverse(array<string|int, mixed> $nodes) : null|array<string|int, Node>
Parameters
- $nodes : array<string|int, mixed>
-
Array of nodes
Return values
null|array<string|int, Node> —Array of nodes
enterNode()
Called when entering a node.
public
enterNode(Node $node) : null|int|Node
Parameters
- $node : Node
-
Node
Return values
null|int|Node —Replacement node (or special return value)
leaveNode()
Called when leaving a node.
public
leaveNode(Node $node) : null|int|Node|array<string|int, Node>
Parameters
- $node : Node
-
Node
Return values
null|int|Node|array<string|int, Node> —Replacement node (or special return value)
getEndCall()
Get PhpParser AST nodes for a `markEnd` call.
private
getEndCall([Expr|null $arg = null ]) : StaticCall
Optionally pass in a return value.
Parameters
- $arg : Expr|null = null
Return values
StaticCall —getStartCall()
Get PhpParser AST nodes for a `markStart` call.
private
getStartCall() : StaticCall
Return values
StaticCall —maybeExpression()
Compatibility shim for PHP Parser 3.x.
private
maybeExpression(Node $expr[, array<string|int, mixed> $attrs = [] ]) : Expr|Expression
Wrap $expr in a PhpParser\Node\Stmt\Expression if the class exists.
Parameters
- $expr : Node
- $attrs : array<string|int, mixed> = []