## gate.jape
Class ComplexPatternElement

    java.lang.Object
      |
      +--gate.jape.PatternElement
            |
            +--gate.jape.ComplexPatternElement

All Implemented Interfaces:
  Cloneable, JapeConstants, Matcher, Serializable

public class ComplexPatternElement
extends PatternElement
implements JapeConstants, Serializable

A pattern element enclosed in round brackets. Has a ConstraintGroups, Kleene operator and binding name.

See Also:
  Serialized Form

Fields inherited from interface gate.jape.JapeConstants
`APPELT_STYLE, BRILL_STYLE, DEFAULT_PRIORITY, FIRST_STYLE, INDENT_PADDING, KLEENE_PLUS, KLEENE_QUERY, KLEENE_STAR, MULTI_SPAN_BINDING, NO_BINDING, NO_KLEENE_OP, SINGLE_SPAN_BINDING`

Constructor Summary
`ComplexPatternElement(ConstraintGroup constraintGroup, int kleeneOp, String bindingName)` Construction from ConstraintGroup, Kleene operator type and binding name.

Method Summary
`Object` `clone()` Need cloning for processing of macro references.
`void` `finish()` Finish: replace dynamic data structures with Java arrays; called after parsing.
`String` `getBindingName()` Get binding name.
`ConstraintGroup` `getConstraintGroup()`
`int` `getKleeneOp()`
`AnnotationSet` `getMatchedAnnots()` Access to the annotations that have been matched.
`boolean` `matches(Document doc, int position, MutableInteger newPosition)` Does this element match the document at this position?
`void` `reset()` Reset: clear caches of annotations matched.
`void` `rollback(int arity)` Multilevel rollback of annotation caches.
`String` `toString()` Create a string representation of the object.
`String` `toString(String pad)` Create a string representation of the object.

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

Constructor Detail

### ComplexPatternElement

    public ComplexPatternElement(ConstraintGroup constraintGroup,
                                 int kleeneOp,
                                 String bindingName)

  Construction from ConstraintGroup, Kleene operator type and binding name. Kleene types are defined in JapeConstants.

Method Detail

### getBindingName

    public String getBindingName()

  Get binding name.

### clone

    public Object clone()

  Need cloning for processing of macro references. See comments on `PatternElement.clone()`
  Overrides:
    `clone` in class `PatternElement`

### finish

    public void finish()

  Finish: replace dynamic data structures with Java arrays; called after parsing.

### getMatchedAnnots

    public AnnotationSet getMatchedAnnots()

  Access to the annotations that have been matched.
  Overrides:
    `getMatchedAnnots` in class `PatternElement`

### reset

    public void reset()

  Reset: clear caches of annotations matched.
  Overrides:
    `reset` in class `PatternElement`

### rollback

    public void rollback(int arity)

  Multilevel rollback of annotation caches.
  Overrides:
    `rollback` in class `PatternElement`

### matches

    public boolean matches(Document doc,
                           int position,
                           MutableInteger newPosition)

  Does this element match the document at this position?

### toString

    public String toString()

  Create a string representation of the object.
  Overrides:
    `toString` in class `Object`

### toString

    public String toString(String pad)

  Create a string representation of the object.
  Overrides:
    `toString` in class `PatternElement`

### getKleeneOp

    public int getKleeneOp()

### getConstraintGroup

    public ConstraintGroup getConstraintGroup()