# class REXML::Validation::Optional

### Public Instance Methods

expected() click to toggle source

    # File lib/rexml/validation/relaxng.rb, line 275
    def expected
      return [ @prior.expected, @events[0] ].flatten if @current == 0
      return [@events[@current]]
    end

matches?(event) click to toggle source

    # File lib/rexml/validation/relaxng.rb, line 270
    def matches?(event)
      @events[@current].matches?(event) ||
      (@current == 0 and @previous[-1].matches?(event))
    end

next( event ) click to toggle source
Calls superclass method `REXML::Validation::State#next`

    # File lib/rexml/validation/relaxng.rb, line 260
    def next( event )
      if @current == 0
        rv = super
        return rv if rv
        @prior = @previous.pop
        return @prior.next( event )
      end
      super
    end