Class Token

All Implemented Interfaces:
Op

@Immutable public final class Token extends Doc implements Op
A leaf Doc for a token.
  • Method Details

    • getPlusIndentCommentsBefore

      public Indent getPlusIndentCommentsBefore()
      How much extra to indent comments before the Token.
      Returns:
      the extra indent
    • breakAndIndentTrailingComment

      public Optional<Indent> breakAndIndentTrailingComment()
      Force a line break and indent trailing javadoc or block comments.
    • make

      public static Op make(Input.Token token, Token.RealOrImaginary realOrImaginary, Indent plusIndentCommentsBefore, Optional<Indent> breakAndIndentTrailingComment)
      Make a Token.
      Parameters:
      token - the Input.Token to wrap
      realOrImaginary - did this Input.Token appear in the input, or was it generated incorrectly?
      plusIndentCommentsBefore - extra plusIndent for comments just before this token
      Returns:
      the new Token
    • getToken

      public Input.Token getToken()
      Return the wrapped Input.Token.
      Returns:
      the Input.Token
    • realOrImaginary

      public Token.RealOrImaginary realOrImaginary()
      Is the token good? That is, does it match an Input.Token?
      Returns:
      whether the @code Token} is good
    • add

      public void add(DocBuilder builder)
      Description copied from interface: Op
      Add an Op to a DocBuilder.
      Specified by:
      add in interface Op
      Parameters:
      builder - the DocBuilder
    • computeWidth

      protected float computeWidth()
      Description copied from class: Doc
      Compute the Doc's width.
      Specified by:
      computeWidth in class Doc
      Returns:
      the width, or Float.POSITIVE_INFINITY if it must be broken
    • computeFlat

      protected String computeFlat()
      Description copied from class: Doc
      Compute the Doc's flat value. Not defined (and never called) if contains forced breaks.
      Specified by:
      computeFlat in class Doc
      Returns:
      the flat value
    • computeRange

      protected com.google.common.collect.Range<Integer> computeRange()
      Description copied from class: Doc
      Compute the Doc's Range of Input.Tokens.
      Specified by:
      computeRange in class Doc
      Returns:
      the Range
    • computeBreaks

      public State computeBreaks(CommentsHelper commentsHelper, int maxWidth, State state, Obs.ExplorationNode observationNode)
      Description copied from class: Doc
      Make breaking decisions for a Doc.
      Specified by:
      computeBreaks in class Doc
      maxWidth - the maximum line width
      state - the current output state
      Returns:
      the new output state
    • write

      public void write(State state, Output output)
      Description copied from class: Doc
      Write a Doc to an Output, after breaking decisions have been made.
      Specified by:
      write in class Doc
    • toString

      public String toString()
      Overrides:
      toString in class Object