Class TokenBuilder

java.lang.Object
org.basex.util.TokenBuilder

public final class TokenBuilder extends Object
This class serves as an efficient constructor for Tokens. It bears some resemblance to Java's StringBuilder.
Author:
BaseX Team 2005-21, BSD License, Christian Gruen
  • Field Details

  • Constructor Details

    • TokenBuilder

      public TokenBuilder()
      Empty constructor.
    • TokenBuilder

      public TokenBuilder(long capacity)
      Constructor with initial array capacity.
      Parameters:
      capacity - array capacity
    • TokenBuilder

      public TokenBuilder(byte[] token)
      Constructor with initial token.
      Parameters:
      token - initial token
  • Method Details

    • size

      public int size()
      Returns the number of bytes.
      Returns:
      number of bytes
    • size

      public void size(int sz)
      Sets the number of bytes. Note that no bound check is performed by this method.
      Parameters:
      sz - number of bytes
    • isEmpty

      public boolean isEmpty()
      Tests if the token is empty.
      Returns:
      result of check
    • reset

      public TokenBuilder reset()
      Resets the token buffer.
      Returns:
      self reference
    • bold

      public TokenBuilder bold()
      Adds a bold flag. This method should only be called to control text rendering in the visual front end.
      Returns:
      self reference
    • uline

      public TokenBuilder uline()
      Adds an underline toggle flag. This method should only be called to control text rendering in the visual front end.
      Returns:
      self reference
    • norm

      public TokenBuilder norm()
      Adds a norm flag. This method should only be called to control text rendering in the visual front end.
      Returns:
      self reference
    • hline

      public TokenBuilder hline()
      Adds a half new line. This method should only be called to control text rendering in the visual front end.
      Returns:
      self reference
    • nline

      public TokenBuilder nline()
      Adds a new line. This method should only be called to control text rendering in the visual front end.
      Returns:
      self reference
    • add

      public TokenBuilder add(int cp)
      Adds the specified character. Call addInt(int) to add the string value of an integer.
      Parameters:
      cp - codepoint of the character
      Returns:
      self reference
    • cp

      public int cp(int pos)
      Returns the codepoint stored at the specified position.
      Parameters:
      pos - position
      Returns:
      character
    • cl

      public int cl(int pos)
      Returns the length of the codepoints stored at the specified position.
      Parameters:
      pos - position
      Returns:
      character
    • get

      public byte get(int pos)
      Returns the byte stored at the specified position.
      Parameters:
      pos - position
      Returns:
      byte
    • set

      public void set(int pos, byte value)
      Sets a byte at the specified position.
      Parameters:
      value - byte to be set
      pos - position
    • delete

      public TokenBuilder delete(int start, int end)
      Deletes bytes from the token.
      Parameters:
      start - start position
      end - end position
      Returns:
      self reference
    • addByte

      public TokenBuilder addByte(byte value)
      Adds a single byte to the token.
      Parameters:
      value - the byte to be added
      Returns:
      self reference
    • addInt

      public TokenBuilder addInt(int value)
      Adds an integer value to the token.
      Parameters:
      value - value to be added
      Returns:
      self reference
    • addLong

      public TokenBuilder addLong(long value)
      Adds a number to the token.
      Parameters:
      value - value to be added
      Returns:
      self reference
    • add

      public TokenBuilder add(byte[] token)
      Adds a token to the token.
      Parameters:
      token - the token to be added
      Returns:
      self reference
    • add

      public TokenBuilder add(byte[] token, int start, int end)
      Adds a subtoken.
      Parameters:
      token - the token
      start - start position
      end - end position
      Returns:
      self reference
    • add

      public TokenBuilder add(String string)
      Adds a string to the token.
      Parameters:
      string - the string to be added
      Returns:
      self reference
    • addAll

      public TokenBuilder addAll(Object[] objects, String separator)
      Adds multiple strings to the token, separated by the specified string.
      Parameters:
      objects - the object to be added
      separator - separator string
      Returns:
      self reference
    • add

      public TokenBuilder add(Object object)
      Adds an object to the token.
      Parameters:
      object - the object to be added
      Returns:
      self reference
    • addExt

      public TokenBuilder addExt(Object object, Object... extensions)
      Adds the string representation of an object. The specified string may contain % characters as place holders. All place holders will be replaced by the specified extensions. If a digit is specified after the place holder character, it will be interpreted as insertion position.
      Parameters:
      object - object to be extended
      extensions - optional extension strings
      Returns:
      self reference
    • trim

      public TokenBuilder trim()
      Trims leading and trailing whitespaces.
      Returns:
      self reference
    • normalize

      public TokenBuilder normalize()
      Normalizes newlines.
      Returns:
      self reference
    • toArray

      public byte[] toArray()
      Returns the token as byte array.
      Returns:
      token
    • next

      public byte[] next()
      Returns the token as byte array and resets the token buffer. The call of this function is identical to calling toArray() and reset().
      Returns:
      token
    • finish

      public byte[] finish()
      Returns the token as byte array, and invalidates the internal array. Warning: the function must only be called if the builder is discarded afterwards.
      Returns:
      token
    • toString

      public String toString()
      Overrides:
      toString in class Object