# Class BaseBuilder

java.lang.Object
org.apache.cayenne.access.sqlbuilder.BaseBuilder

All Implemented Interfaces:
  `NodeBuilder`

Direct Known Subclasses:
  `DeleteBuilder, InsertBuilder, SelectBuilder, UpdateBuilder`

public abstract class BaseBuilder extends Object implements NodeBuilder

Since:
  4.2

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final Node[]`
  `nodes`
  `protected final Node`
  `root`
  Main root of this query

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BaseBuilder(Node root, int size)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Node`
  `build()`
  `Node`
  `getRoot()`
  `protected Node`
  `node(int idx, Supplier<Node> nodeSupplier)`

  ### Methods inherited from class Object

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

- ## Field Details

  - ### root

    protected final Node root
    Main root of this query

  - ### nodes

    protected final Node[] nodes

- ## Constructor Details

  - ### BaseBuilder

    public BaseBuilder(Node root, int size)

- ## Method Details

  - ### node

    protected Node node(int idx, Supplier<Node> nodeSupplier)

  - ### build

    public Node build()
    Specified by:
      `build` in interface `NodeBuilder`

  - ### getRoot

    public Node getRoot()