Package org.h2.bnf

# Class RuleOptional

java.lang.Object
org.h2.bnf.RuleOptional

All Implemented Interfaces:
  `Rule`

public class RuleOptional extends Object implements Rule
Represents an optional BNF rule.

## Constructor Summary

Constructors
Constructor
Description
`RuleOptional(Rule rule)`

## Method Summary

Modifier and Type
Method
Description
`void`
`accept(BnfVisitor visitor)`
Call the visit method in the given visitor.
`boolean`
`autoComplete(Sentence sentence)`
Add the next possible token(s).
`void`
`setLinks(HashMap<String,RuleHead> ruleMap)`
Update cross references.
`String`
`toString()`

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

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

## Constructor Details

### RuleOptional

public RuleOptional(Rule rule)

## Method Details

### accept

public void accept(BnfVisitor visitor)
Description copied from interface: `Rule`
Call the visit method in the given visitor.

Specified by:
  `accept` in interface `Rule`
Parameters:
  `visitor` - the visitor

### setLinks

public void setLinks(HashMap<String,RuleHead> ruleMap)
Description copied from interface: `Rule`
Update cross references.

Specified by:
  `setLinks` in interface `Rule`
Parameters:
  `ruleMap` - the reference map

### autoComplete

public boolean autoComplete(Sentence sentence)
Description copied from interface: `Rule`
Add the next possible token(s). If there was a match, the query in the sentence is updated (the matched token is removed).

Specified by:
  `autoComplete` in interface `Rule`
Parameters:
  `sentence` - the sentence context
Returns:
  true if a full match

### toString

public String toString()

Overrides:
  `toString` in class `Object`