WindowsBatchTokenMaker
Date: 2017-02-11

org.fife.ui.rsyntaxtextarea.modes

## Class WindowsBatchTokenMaker

- java.lang.Object
- - org.fife.ui.rsyntaxtextarea.TokenMakerBase
  - - org.fife.ui.rsyntaxtextarea.AbstractTokenMaker
    - - org.fife.ui.rsyntaxtextarea.modes.WindowsBatchTokenMaker

- All Implemented Interfaces:
    TokenMaker

      public class WindowsBatchTokenMaker
      extends AbstractTokenMaker

  A token maker that turns text into a linked list of `Token`s for syntax highlighting Microsoft Windows batch files.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.lang.String` | `operators`

    - ### Fields inherited from class org.fife.ui.rsyntaxtextarea.AbstractTokenMaker

      `wordsToHighlight`

    - ### Fields inherited from class org.fife.ui.rsyntaxtextarea.TokenMakerBase

      `currentToken, firstToken, previousToken`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WindowsBatchTokenMaker()` Constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addToken(javax.swing.text.Segment segment, int start, int end, int tokenType, int startOffset)` Checks the token to give it the exact ID it deserves before being passed up to the super method.
    `java.lang.String[]` | `getLineCommentStartAndEnd(int languageIndex)` Returns the text to place at the beginning and end of a line to "comment" it in this programming language.
    `boolean` | `getMarkOccurrencesOfTokenType(int type)` Returns whether tokens of the specified type should have "mark occurrences" enabled for the current programming language.
    `Token` | `getTokenList(javax.swing.text.Segment text, int startTokenType, int startOffset)` Returns a list of tokens representing the given text.
    `TokenMap` | `getWordsToHighlight()` Returns the words to highlight for Windows batch files.

    - ### Methods inherited from class org.fife.ui.rsyntaxtextarea.AbstractTokenMaker

      `removeLastToken`

    - ### Methods inherited from class org.fife.ui.rsyntaxtextarea.TokenMakerBase

      `addNullToken, addToken, addToken, createOccurrenceMarker, getClosestStandardTokenTypeForInternalType, getCurlyBracesDenoteCodeBlocks, getInsertBreakAction, getLanguageIndex, getLastTokenTypeOnLine, getOccurrenceMarker, getShouldIndentNextLineAfter, isIdentifierChar, isMarkupLanguage, resetTokenList, setLanguageIndex`

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

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

- - ### Field Detail

    - #### operators

          protected final java.lang.String operators

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### WindowsBatchTokenMaker

          public WindowsBatchTokenMaker()

      Constructor.

  - ### Method Detail

    - #### addToken

          public void addToken(javax.swing.text.Segment segment,
                      int start,
                      int end,
                      int tokenType,
                      int startOffset)

      Checks the token to give it the exact ID it deserves before being passed up to the super method.
      Overrides:
        `addToken` in class `TokenMakerBase`
      Parameters:
        `segment` - `Segment` to get text from.
        `start` - Start offset in `segment` of token.
        `end` - End offset in `segment` of token.
        `tokenType` - The token's type.
        `startOffset` - The offset in the document at which the token occurs.

    - #### getLineCommentStartAndEnd

          public java.lang.String[] getLineCommentStartAndEnd(int languageIndex)

      Returns the text to place at the beginning and end of a line to "comment" it in this programming language.
      Specified by:
        `getLineCommentStartAndEnd` in interface `TokenMaker`
      Overrides:
        `getLineCommentStartAndEnd` in class `TokenMakerBase`
      Parameters:
        `languageIndex` - The language index at the offset in question. Since some `TokenMaker`s effectively have nested languages (such as JavaScript in HTML), this parameter tells the `TokenMaker` what sub-language to look at.
      Returns:
        The start and end strings to add to a line to "comment" it out. A `null` value for either means there is no string to add for that part. A value of `null` for the array means this language does not support commenting/uncommenting lines.

    - #### getMarkOccurrencesOfTokenType

          public boolean getMarkOccurrencesOfTokenType(int type)

      Returns whether tokens of the specified type should have "mark occurrences" enabled for the current programming language.
      Specified by:
        `getMarkOccurrencesOfTokenType` in interface `TokenMaker`
      Overrides:
        `getMarkOccurrencesOfTokenType` in class `TokenMakerBase`
      Parameters:
        `type` - The token type.
      Returns:
        Whether tokens of this type should have "mark occurrences" enabled.

    - #### getWordsToHighlight

          public TokenMap getWordsToHighlight()

      Returns the words to highlight for Windows batch files.
      Specified by:
        `getWordsToHighlight` in class `AbstractTokenMaker`
      Returns:
        A `TokenMap` containing the words to highlight for Windows batch files.
      See Also:
        `AbstractTokenMaker.getWordsToHighlight()`

    - #### getTokenList

          public Token getTokenList(javax.swing.text.Segment text,
                           int startTokenType,
                           int startOffset)

      Returns a list of tokens representing the given text.
      Parameters:
        `text` - The text to break into tokens.
        `startTokenType` - The token with which to start tokenizing.
        `startOffset` - The offset at which the line of tokens begins.
      Returns:
        A linked list of tokens representing `text`.