packcr 0.0.3 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/exe/packcr +3 -0
- data/lib/packcr/broadcast.rb +17 -0
- data/lib/packcr/cli.rb +25 -0
- data/lib/packcr/code_block.rb +2 -3
- data/lib/packcr/context.rb +58 -872
- data/lib/packcr/generator.rb +13 -10
- data/lib/packcr/node/action_node.rb +20 -5
- data/lib/packcr/node/alternate_node.rb +27 -14
- data/lib/packcr/node/capture_node.rb +22 -8
- data/lib/packcr/node/charclass_node.rb +41 -13
- data/lib/packcr/node/eof_node.rb +23 -0
- data/lib/packcr/node/error_node.rb +29 -11
- data/lib/packcr/node/expand_node.rb +14 -4
- data/lib/packcr/node/predicate_node.rb +19 -23
- data/lib/packcr/node/quantity_node.rb +28 -18
- data/lib/packcr/node/reference_node.rb +43 -5
- data/lib/packcr/node/root_node.rb +60 -0
- data/lib/packcr/node/rule_node.rb +38 -3
- data/lib/packcr/node/sequence_node.rb +51 -31
- data/lib/packcr/node/string_node.rb +16 -12
- data/lib/packcr/node.rb +48 -0
- data/lib/packcr/parser.rb +4570 -0
- data/lib/packcr/stream.rb +9 -13
- data/lib/packcr/templates/context/header.c.erb +29 -0
- data/lib/packcr/templates/context/source.c.erb +1292 -0
- data/lib/packcr/templates/context/source.rb.erb +406 -0
- data/lib/packcr/templates/node/action.c.erb +16 -0
- data/lib/packcr/templates/node/action.rb.erb +21 -0
- data/lib/packcr/templates/node/alternate.c.erb +34 -0
- data/lib/packcr/templates/node/alternate.rb.erb +40 -0
- data/lib/packcr/templates/node/capture.c.erb +17 -0
- data/lib/packcr/templates/node/capture.rb.erb +14 -0
- data/lib/packcr/templates/node/charclass.c.erb +47 -0
- data/lib/packcr/templates/node/charclass.rb.erb +49 -0
- data/lib/packcr/templates/node/charclass_any.c.erb +5 -0
- data/lib/packcr/templates/node/charclass_any.rb.erb +7 -0
- data/lib/packcr/templates/node/charclass_fail.c.erb +1 -0
- data/lib/packcr/templates/node/charclass_fail.rb.erb +1 -0
- data/lib/packcr/templates/node/charclass_one.c.erb +19 -0
- data/lib/packcr/templates/node/charclass_one.rb.erb +23 -0
- data/lib/packcr/templates/node/charclass_utf8.c.erb +49 -0
- data/lib/packcr/templates/node/charclass_utf8.rb.erb +50 -0
- data/lib/packcr/templates/node/charclass_utf8_reverse.rb.erb +51 -0
- data/lib/packcr/templates/node/eof.c.erb +1 -0
- data/lib/packcr/templates/node/eof.rb.erb +3 -0
- data/lib/packcr/templates/node/error.c.erb +28 -0
- data/lib/packcr/templates/node/error.rb.erb +34 -0
- data/lib/packcr/templates/node/expand.c.erb +16 -0
- data/lib/packcr/templates/node/expand.rb.erb +16 -0
- data/lib/packcr/templates/node/predicate.c.erb +30 -0
- data/lib/packcr/templates/node/predicate.rb.erb +28 -0
- data/lib/packcr/templates/node/predicate_neg.c.erb +23 -0
- data/lib/packcr/templates/node/predicate_neg.rb.erb +22 -0
- data/lib/packcr/templates/node/quantify_many.c.erb +45 -0
- data/lib/packcr/templates/node/quantify_many.rb.erb +47 -0
- data/lib/packcr/templates/node/quantify_one.c.erb +21 -0
- data/lib/packcr/templates/node/quantify_one.rb.erb +23 -0
- data/lib/packcr/templates/node/reference.c.erb +5 -0
- data/lib/packcr/templates/node/reference.rb.erb +9 -0
- data/lib/packcr/templates/node/reference_reverse.rb.erb +9 -0
- data/lib/packcr/templates/node/rule.c.erb +19 -0
- data/lib/packcr/templates/node/rule.rb.erb +23 -0
- data/lib/packcr/templates/node/sequence.c.erb +12 -0
- data/lib/packcr/templates/node/sequence.rb.erb +12 -0
- data/lib/packcr/templates/node/string_many.c.erb +11 -0
- data/lib/packcr/templates/node/string_many.rb.erb +10 -0
- data/lib/packcr/templates/node/string_one.c.erb +8 -0
- data/lib/packcr/templates/node/string_one.rb.erb +10 -0
- data/lib/packcr/tokenizer.rb +2948 -0
- data/lib/packcr/util.rb +3 -8
- data/lib/packcr/version.rb +1 -1
- data/lib/packcr.rb +1 -2
- metadata +88 -8
- data/lib/packcr/buffer.rb +0 -47
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 53243fb5032a86ddf13dcd3c4b99075d4e8ebfae75a0f239ec4e4564ee56c8dc
|
4
|
+
data.tar.gz: 17c31d7663eb1207a3426add4c226dde9bdbf4540a11b4570c4b26f5ddb5f0be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5fd7efc77c5b5e49c540652d0072aa3b749b8d99c39bad10984ad02f12c4f0fef3df2783ff11a012f4eac5cf62e0d8c3640b381909ee9c08e00dc990e67a3acb
|
7
|
+
data.tar.gz: cb94b6e3bc70fbad68a50471321f66d76425d6729775a1d542f44e45900fef286a592947fbabcf398cca67c142be58cc64b89a7249eba5baa5775ae19f7af4f3
|
data/exe/packcr
ADDED
data/lib/packcr/cli.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
require "packcr"
|
2
|
+
require "optparse"
|
3
|
+
|
4
|
+
class Packcr::Cli
|
5
|
+
class << self
|
6
|
+
def run(argv)
|
7
|
+
new.run(argv)
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def run(argv)
|
12
|
+
lang = nil
|
13
|
+
debug = false
|
14
|
+
ascii = false
|
15
|
+
opt = OptionParser.new
|
16
|
+
opt.on("-l", "--lang=VAL") {|v| lang = v.to_sym }
|
17
|
+
opt.on("-d", "--debug") {|v| debug = true }
|
18
|
+
opt.on("-a", "--ascii") {|v| ascii = true }
|
19
|
+
|
20
|
+
opt.parse!(argv)
|
21
|
+
argv.each do |ifile|
|
22
|
+
Packcr.new(ifile, lang: lang, debug: debug, ascii: ascii).run
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
data/lib/packcr/code_block.rb
CHANGED
@@ -1,11 +1,10 @@
|
|
1
1
|
|
2
2
|
class Packcr
|
3
3
|
class CodeBlock
|
4
|
-
attr_reader :text, :
|
4
|
+
attr_reader :text, :line
|
5
5
|
|
6
|
-
def initialize(text = nil,
|
6
|
+
def initialize(text = nil, line = nil, col = nil)
|
7
7
|
@text = text
|
8
|
-
@len = len
|
9
8
|
@line = line
|
10
9
|
@col = col
|
11
10
|
end
|