net.sf.saxon.regex

## Class Operation.OpConfidentPlus

- java.lang.Object
- - net.sf.saxon.regex.Operation
  - - net.sf.saxon.regex.Operation.OpConfidentPlus

- Enclosing class:
    Operation

      public static class Operation.OpConfidentPlus
      extends Operation

  "Confident Plus" quantifier: used when there is no ambiguity about the ending condition, and therefore no need to backtrack. This means we can use iteration rather than recursion, eliminating the risk of stack overflow.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class net.sf.saxon.regex.Operation

      `Operation.OpAtom, Operation.OpBackReference, Operation.OpBOL, Operation.OpBranch, Operation.OpCharClass, Operation.OpClose, Operation.OpCloseCluster, Operation.OpConfidentPlus, Operation.OpConfidentStar, Operation.OpContinue, Operation.OpEndProgram, Operation.OpEOL, Operation.OpGoTo, Operation.OpMaybe, Operation.OpNothing, Operation.OpOpen, Operation.OpOpenCluster, Operation.OpPlus, Operation.OpReluctantMaybe, Operation.OpReluctantPlus, Operation.OpReluctantStar, Operation.OpStar`

  - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.regex.Operation

      `ACTION_ADVANCE_TO_FOLLOWING, ACTION_ADVANCE_TO_NEXT, ACTION_ADVANCE_TO_NEXT_NEXT, ACTION_RETURN, next`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Operation.OpConfidentPlus()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `exec(REMatcher matcher, int node, int idx)` Execute the operation
    `int` | `nextAction(int idx)` Determine the action to take after calling exec()
    `String` | `toString()`

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

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

- - ### Constructor Detail

    - #### Operation.OpConfidentPlus

          public Operation.OpConfidentPlus()

  - ### Method Detail

    - #### exec

          public int exec(REMatcher matcher,
                 int node,
                 int idx)

      Description copied from class: `Operation`
      Execute the operation
      Parameters:
        `matcher` - the REMatcher
        `node` - the program node containing this operation
        `idx` - the current position in the input string
      Returns:
        >=0: matching succeeded, returns new position in input string. -1: matching failed: return to caller.

    - #### nextAction

          public int nextAction(int idx)

      Description copied from class: `Operation`
      Determine the action to take after calling exec()
      Overrides:
        `nextAction` in class `Operation`
      Parameters:
        `idx` - the value returned by exec()
      Returns:
        one of the values ACTION_RETURN, ACTION_ADVANCE_TO_NEXT, ...

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.