org.apache.jmeter.engine

## Class PreCompiler

- java.lang.Object
- - org.apache.jmeter.engine.PreCompiler

- All Implemented Interfaces:
    HashTreeTraverser

      public class PreCompiler
      extends Object
      implements HashTreeTraverser

  Class to replace function and variable references in the test tree.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PreCompiler()`
    `PreCompiler(boolean remote)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addNode(Object node, HashTree subTree)` The tree traverses itself depth-first, calling addNode for each object it encounters as it goes.
    `void` | `processPath()` Process path is called when a leaf is reached.
    `void` | `subtractNode()` Indicates traversal has moved up a step, and the visitor should remove the top node from its stack structure.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PreCompiler

          public PreCompiler()

    - #### PreCompiler

          public PreCompiler(boolean remote)

  - ### Method Detail

    - #### addNode

          public void addNode(Object node,
                              HashTree subTree)

      The tree traverses itself depth-first, calling addNode for each object it encounters as it goes. This is a callback method, and should not be called except by a HashTree during traversal.
      Specified by:
        `addNode` in interface `HashTreeTraverser`
      Parameters:
        `node` - the node currently encountered
        `subTree` - the HashTree under the node encountered

    - #### subtractNode

          public void subtractNode()

      Indicates traversal has moved up a step, and the visitor should remove the top node from its stack structure. This is a callback method, and should not be called except by a HashTree during traversal.
      Specified by:
        `subtractNode` in interface `HashTreeTraverser`

    - #### processPath

          public void processPath()

      Process path is called when a leaf is reached. If a visitor wishes to generate Lists of path elements to each leaf, it should keep a Stack data structure of nodes passed to it with addNode, and removing top items for every `HashTreeTraverser.subtractNode()` call. This is a callback method, and should not be called except by a HashTree during traversal.
      Specified by:
        `processPath` in interface `HashTreeTraverser`

Copyright © 1998-2017 Apache Software Foundation. All Rights Reserved.