Class: Packcr

Inherits:
Object
  • Object
show all
Extended by:
Util
Defined in:
lib/packcr.rb,
lib/packcr.rb,
lib/packcr/node.rb,
lib/packcr/util.rb,
lib/packcr/buffer.rb,
lib/packcr/stream.rb,
lib/packcr/context.rb,
lib/packcr/version.rb,
lib/packcr/generator.rb,
lib/packcr/code_block.rb,
lib/packcr/node/rule_node.rb,
lib/packcr/node/error_node.rb,
lib/packcr/node/action_node.rb,
lib/packcr/node/expand_node.rb,
lib/packcr/node/string_node.rb,
lib/packcr/node/capture_node.rb,
lib/packcr/node/quantity_node.rb,
lib/packcr/node/sequence_node.rb,
lib/packcr/node/alternate_node.rb,
lib/packcr/node/charclass_node.rb,
lib/packcr/node/predicate_node.rb,
lib/packcr/node/reference_node.rb

Defined Under Namespace

Modules: Util Classes: Buffer, CodeBlock, Context, Generator, Node, Stream

Constant Summary collapse

CODE_REACH__BOTH =
0
CODE_REACH__ALWAYS_SUCCEED =
1
CODE_REACH__ALWAYS_FAIL =
-1
VERSION =
"0.0.3"

Instance Method Summary collapse

Methods included from Util

dump_escaped_string, dump_integer_value, escape_character, escape_string, find_trailing_blanks, is_identifier_string, template, unescape_string, unify_indent_spaces

Constructor Details

#initialize(path, **opt) ⇒ Packcr

Returns a new instance of Packcr.



18
19
20
21
# File 'lib/packcr.rb', line 18

def initialize(path, **opt)
  @path = path.to_s
  @opt = opt
end

Instance Method Details

#runObject



23
24
25
26
27
28
29
30
31
32
# File 'lib/packcr.rb', line 23

def run
  Context.new(@path.to_s, **@opt) do |ctx|
    if !ctx.parse
      raise "PackCR error: can't parse"
    end
    if !ctx.generate
      raise "PackCR error: can't generate"
    end
  end
end