xrb 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/bake/xrb/parsers.rb +17 -20
- data/ext/extconf.rb +0 -1
- data/ext/xrb/escape.c +1 -1
- data/ext/xrb/escape.h +1 -1
- data/ext/xrb/markup.c +241 -241
- data/ext/xrb/query.c +69 -69
- data/ext/xrb/tag.c +4 -4
- data/ext/xrb/tag.h +1 -1
- data/ext/xrb/template.c +93 -93
- data/ext/xrb/xrb.c +3 -3
- data/ext/xrb/xrb.h +1 -11
- data/lib/xrb/builder.rb +13 -6
- data/lib/xrb/entities.xrb +4 -19
- data/lib/xrb/fallback/markup.rb +1618 -1619
- data/lib/xrb/fallback/markup.rl +0 -1
- data/lib/xrb/fallback/query.rb +515 -515
- data/lib/xrb/fallback/template.rb +787 -787
- data/lib/xrb/parsers.rb +0 -1
- data/lib/xrb/template.rb +10 -46
- data/lib/xrb/version.rb +1 -1
- data/readme.md +42 -1
- data.tar.gz.sig +0 -0
- metadata +2 -3
- metadata.gz.sig +0 -0
- data/lib/xrb/parse_delegate.rb +0 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f64c9b5e726af2122bf7031ea5c0acfd6e25619b7d73faff0ad4c9191efb823
|
4
|
+
data.tar.gz: c6088d6f0c819d894a96b3129005a7c9c8fda372e149a5323cc01e200f195b09
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 489dd6c69569b06cc6fb4be56ab98877b90866f1c140b0e0b502255ec505182de7e0b14a44feac14108bdfa5c2b66c350ab3f271b0cf541970b5583a4d9721d3
|
7
|
+
data.tar.gz: bb85136e9ed1ebb887165451d45c851cd7aa39d05eefff8b26ad930035e8c92d62f128c8a21d23090a53e4923dfe217f299e3f47cc4293a467f2782680809f39
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/bake/xrb/parsers.rb
CHANGED
@@ -5,34 +5,26 @@
|
|
5
5
|
|
6
6
|
# Generate the pure Ruby parsers.
|
7
7
|
def generate_fallback
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
# sh("ruby-beautify", "--tabs", "--overwrite", *Dir.glob("*.rb"))
|
8
|
+
pattern = File.join(fallback_directory, "*.rl")
|
9
|
+
|
10
|
+
Dir.glob(pattern, base: context.root).each do |parser_path|
|
11
|
+
system("ragel", "-I", parsers_directory, "-R", parser_path, "-F1", chdir: context.root)
|
14
12
|
end
|
15
13
|
end
|
16
14
|
|
17
15
|
# Generate the native C parsers.
|
18
16
|
def generate_native
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
17
|
+
pattern = File.join(native_directory, "*.rl")
|
18
|
+
|
19
|
+
Dir.glob(pattern, base: context.root).each do |parser_path|
|
20
|
+
system("ragel", "-I", parsers_directory, "-C", parser_path, "-G2", chdir: context.root)
|
23
21
|
end
|
24
22
|
end
|
25
23
|
|
26
|
-
# Compile the C extension.
|
27
|
-
def compile
|
28
|
-
system("rake", "compile", chdir: extensions_directory)
|
29
|
-
end
|
30
|
-
|
31
24
|
# Generate the parsers and compile them as required.
|
32
25
|
def generate
|
33
26
|
self.generate_native
|
34
27
|
self.generate_fallback
|
35
|
-
self.compile
|
36
28
|
end
|
37
29
|
|
38
30
|
# Generate a visualisation of the parsers.
|
@@ -53,17 +45,22 @@ end
|
|
53
45
|
private
|
54
46
|
|
55
47
|
def parsers_directory
|
56
|
-
|
48
|
+
"parsers"
|
57
49
|
end
|
58
50
|
|
59
51
|
def fallback_directory
|
60
|
-
|
52
|
+
"lib/xrb/fallback"
|
61
53
|
end
|
62
54
|
|
63
55
|
def extensions_directory
|
64
|
-
|
56
|
+
"ext"
|
65
57
|
end
|
66
58
|
|
67
59
|
def native_directory
|
68
|
-
|
60
|
+
"ext/xrb"
|
61
|
+
end
|
62
|
+
|
63
|
+
def system(*arguments, **options)
|
64
|
+
Console.info(self, arguments: arguments, options: options)
|
65
|
+
super
|
69
66
|
end
|
data/ext/extconf.rb
CHANGED
data/ext/xrb/escape.c
CHANGED
@@ -135,7 +135,7 @@ VALUE XRB_Markup_escape_string(VALUE self, VALUE string) {
|
|
135
135
|
return XRB_Markup_append_buffer(XRB_buffer_for(string), s, p, end);
|
136
136
|
}
|
137
137
|
|
138
|
-
void
|
138
|
+
void Init_XRB_escape(void) {
|
139
139
|
rb_XRB_MarkupString = rb_define_class_under(rb_XRB, "MarkupString", rb_cString);
|
140
140
|
rb_gc_register_mark_object(rb_XRB_MarkupString);
|
141
141
|
|