code: public function offsetSet($offset, $token)
      {
          $token->parent = $this;
          if ($offset === null) {
              $this->_children[] = $token;
          } else {
              $this->_children[$this->calculateOffset($offset)] = $token;
          }
          $this->updateCollectionOffsets();
      }
docs: Adds a child token to the token.
  This method is required by the SPL [[\ArrayAccess]] interface.
  It is implicitly called when you use something like `$token[$offset] = $child;`.
  @param int|null $offset child token offset.
  @param SqlToken $token token to be added.