## org.eclipse.datatools.sqltools.sqleditor.internal.utils
Class SQLMultiLineRule

    java.lang.Object
      org.eclipse.jface.text.rules.PatternRule
          org.eclipse.jface.text.rules.MultiLineRule
              org.eclipse.datatools.sqltools.sqleditor.internal.utils.SQLMultiLineRule

All Implemented Interfaces:
  org.eclipse.jface.text.rules.IPredicateRule, org.eclipse.jface.text.rules.IRule

    public class SQLMultiLineRule

extends org.eclipse.jface.text.rules.MultiLineRule

Constructor Summary
`SQLMultiLineRule(java.lang.String startSequence, java.lang.String endSequence, org.eclipse.jface.text.rules.IToken token)` Creates a rule for the given starting and ending sequence which, if detected, will return the specified token.
`SQLMultiLineRule(java.lang.String startSequence, java.lang.String endSequence, org.eclipse.jface.text.rules.IToken token, char escapeCharacter)` Creates a rule for the given starting and ending sequence which, if detected, will return the specific token.

Method Summary
`org.eclipse.jface.text.rules.IToken` `evaluate(org.eclipse.jface.text.rules.ICharacterScanner scanner)` Evaluates the rule by examining the characters available from the provided character scanner.
`boolean` `isCaseSensitive()` Gets whether or not to consider case when matching the rule pattern.
`void` `setCaseSensitive(boolean csensitive)` Sets whether or not to consider case when matching the rule pattern.
`void` `setIncludeInnerBlockCommands(java.lang.String[] innerBlockCommands)` Sets the inner block command set to the given set of commands.
`void` `setInnerBlocksEndSequence(java.lang.String[] innerEndBlocks)` Sets the inner blocks end sequence to the given pattern.
`void` `setInnerBlocksStartSequence(java.lang.String[] innerStartBlocks)` Sets the inner blocks start sequence to the given pattern.
`void` `setInnerBlocksWithSameEndSequence(java.lang.String[] innerBlocksSameEnd)` Sets the set of inner blocks with the same end sequence to the given set.

Methods inherited from class org.eclipse.jface.text.rules.PatternRule
`evaluate, getSuccessToken, setColumnConstraint`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SQLMultiLineRule

    public SQLMultiLineRule(java.lang.String startSequence,
                            java.lang.String endSequence,
                            org.eclipse.jface.text.rules.IToken token)

  Creates a rule for the given starting and ending sequence which, if detected, will return the specified token.

  Parameters:
    `startSequence` - the pattern's start sequence
    `endSequence` - the pattern's end sequence
    `token` - the token to be returned on success
  See Also:
    `MultiLineRule.MultiLineRule(java.lang.String, java.lang.String, org.eclipse.jface.text.rules.IToken)`

### SQLMultiLineRule

    public SQLMultiLineRule(java.lang.String startSequence,
                            java.lang.String endSequence,
                            org.eclipse.jface.text.rules.IToken token,
                            char escapeCharacter)

  Creates a rule for the given starting and ending sequence which, if detected, will return the specific token. Any character which follows the given escape character will be ignored.

  Parameters:
    `startSequence` - the pattern's start sequence
    `endSequence` - the pattern's end sequence
    `token` - the token to be returned on success
    `escapeCharacter` - the escape character
  See Also:
    `MultiLineRule.MultiLineRule(java.lang.String, java.lang.String, org.eclipse.jface.text.rules.IToken, char)`

Method Detail

### evaluate

    public org.eclipse.jface.text.rules.IToken evaluate(org.eclipse.jface.text.rules.ICharacterScanner scanner)

  Evaluates the rule by examining the characters available from the provided character scanner. The token returned by this rule returns `true` when calling `isUndefined`, if the text the rule investigated does not match the rule's requirements.

  Specified by:
    `evaluate` in interface `org.eclipse.jface.text.rules.IRule`
  Overrides:
    `evaluate` in class `org.eclipse.jface.text.rules.PatternRule`
  Parameters:
    `scanner` - the character scanner to be used by this rule
  Returns:
    the token computed by the rule
  See Also:
    `PatternRule.evaluate(org.eclipse.jface.text.rules.ICharacterScanner)`, `IRule.evaluate(org.eclipse.jface.text.rules.ICharacterScanner)`

### isCaseSensitive

    public boolean isCaseSensitive()

  Gets whether or not to consider case when matching the rule pattern.

  Returns:
    boolean `true` when case should be considered, otherwise `false`

### setCaseSensitive

    public void setCaseSensitive(boolean csensitive)

  Sets whether or not to consider case when matching the rule pattern.

  Parameters:
    `caseSensitive` - `true` when case should be considered, otherwise `false`

### setInnerBlocksStartSequence

    public void setInnerBlocksStartSequence(java.lang.String[] innerStartBlocks)

  Sets the inner blocks start sequence to the given pattern.

  Parameters:
    `innerStartBlocks` - the inner blocks start pattern

### setInnerBlocksEndSequence

    public void setInnerBlocksEndSequence(java.lang.String[] innerEndBlocks)

  Sets the inner blocks end sequence to the given pattern.

  Parameters:
    `innerEndBlocks` - the inner block end pattern

### setIncludeInnerBlockCommands

    public void setIncludeInnerBlockCommands(java.lang.String[] innerBlockCommands)

  Sets the inner block command set to the given set of commands.

  Parameters:
    `innerBlockCommands` - the inner block commands to set

### setInnerBlocksWithSameEndSequence

    public void setInnerBlocksWithSameEndSequence(java.lang.String[] innerBlocksSameEnd)

  Sets the set of inner blocks with the same end sequence to the given set.

  Parameters:
    `innerBlocksSameEnd` - set of inner blocks with same end to set