TaskTagParser
Date: 2017-02-11

org.fife.ui.rsyntaxtextarea.parser

## Class TaskTagParser

- java.lang.Object
- - org.fife.ui.rsyntaxtextarea.parser.AbstractParser
  - - org.fife.ui.rsyntaxtextarea.parser.TaskTagParser

- All Implemented Interfaces:
    Parser

      public class TaskTagParser
      extends AbstractParser

  Parser that identifies "task tags," such as "`TODO`", "`FIXME`", etc. in source code comments.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `TaskTagParser.TaskNotice` A parser notice that signifies a task.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TaskTagParser()` Creates a new task parser.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getTaskPattern()` Returns the regular expression used to search for tasks.
    `ParseResult` | `parse(RSyntaxDocument doc, java.lang.String style)` Parses input from the specified document.
    `void` | `setTaskPattern(java.lang.String pattern)` Sets the pattern of task identifiers.

    - ### Methods inherited from class org.fife.ui.rsyntaxtextarea.parser.AbstractParser

      `getHyperlinkListener, getImageBase, isEnabled, setEnabled, setHyperlinkListener`

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

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

- - ### Constructor Detail

    - #### TaskTagParser

          public TaskTagParser()

      Creates a new task parser. The default parser treats the following identifiers in comments as task definitions: "`TODO`", "`FIXME`", and "`HACK`".

  - ### Method Detail

    - #### getTaskPattern

          public java.lang.String getTaskPattern()

      Returns the regular expression used to search for tasks.
      Returns:
        The regular expression. This may be `null` if no regular expression was specified (or an empty string was specified).
      See Also:
        `setTaskPattern(String)`

    - #### parse

          public ParseResult parse(RSyntaxDocument doc,
                          java.lang.String style)

      Description copied from interface: `Parser`
      Parses input from the specified document.
      Parameters:
        `doc` - The document to parse. This document is in a read lock, so it cannot be modified while parsing is occurring.
        `style` - The language being rendered, such as `SyntaxConstants.SYNTAX_STYLE_JAVA`.
      Returns:
        An object describing the section of the document parsed and the results. This is guaranteed to be non-`null`.

    - #### setTaskPattern

          public void setTaskPattern(java.lang.String pattern)
                              throws java.util.regex.PatternSyntaxException

      Sets the pattern of task identifiers. You will usually want this to be a list of words "or'ed" together, such as "`TODO|FIXME|HACK|REMIND`".
      Parameters:
        `pattern` - The pattern. A value of `null` or an empty string effectively disables task parsing.
      Throws:
        `java.util.regex.PatternSyntaxException` - If `pattern` is an invalid regular expression.
      See Also:
        `getTaskPattern()`