Class: Pione::Util::IgnoreErrorAtom

Inherits:
Parslet::Atoms::Base
  • Object
show all
Defined in:
lib/pione/util/parslet-extension.rb

Overview

IgnoreErrorAtom is a parslet atom for +except+ helper method.

Instance Method Summary collapse

Constructor Details

#initialize(atom) ⇒ IgnoreErrorAtom

Returns a new instance of IgnoreErrorAtom.



23
24
25
# File 'lib/pione/util/parslet-extension.rb', line 23

def initialize(atom)
  @atom = atom
end

Instance Method Details

#to_s_inner(prec) ⇒ Object



35
36
37
# File 'lib/pione/util/parslet-extension.rb', line 35

def to_s_inner(prec)
  "IGNORE_ERROR"
end

#try(source, context) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/pione/util/parslet-extension.rb', line 27

def try(source, context)
  begin
    @atom.apply(source, context)
  rescue Lang::ParserError
    context.err(self, source, "", [])
  end
end