wlang 0.8.5 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +65 -0
- data/README.rdoc +85 -31
- data/bin/wlang +5 -0
- data/doc/specification/dialect.wtpl +14 -0
- data/doc/specification/dialects.wtpl +3 -0
- data/doc/specification/glossary.wtpl +4 -4
- data/doc/specification/rulesets.wtpl +9 -9
- data/doc/specification/specification.css +1 -0
- data/doc/specification/specification.html +68 -5
- data/doc/specification/specification.wtpl +12 -12
- data/doc/specification/specification.yml +9 -9
- data/doc/specification/symbols.wtpl +8 -8
- data/lib/wlang.rb +297 -75
- data/lib/wlang/dialect.rb +7 -3
- data/lib/wlang/dialects/coderay_dialect.rb +4 -4
- data/lib/wlang/dialects/plain_text_dialect.rb +13 -19
- data/lib/wlang/dialects/redcloth_dialect.rb +16 -0
- data/lib/wlang/dialects/ruby_dialect.rb +16 -2
- data/lib/wlang/dialects/standard_dialects.rb +20 -0
- data/lib/wlang/dialects/xhtml_dialect.rb +24 -1
- data/lib/wlang/encoder.rb +1 -1
- data/lib/wlang/encoder_set.rb +5 -0
- data/lib/wlang/errors.rb +70 -6
- data/lib/wlang/ext/hash_methodize.rb +13 -0
- data/lib/wlang/{ruby_extensions.rb → ext/string.rb} +9 -5
- data/lib/wlang/hash_scope.rb +89 -0
- data/lib/wlang/hosted_language.rb +146 -0
- data/lib/wlang/parser.rb +189 -126
- data/lib/wlang/parser_state.rb +94 -0
- data/lib/wlang/rule_set.rb +16 -3
- data/lib/wlang/rulesets/basic_ruleset.rb +14 -6
- data/lib/wlang/rulesets/buffering_ruleset.rb +20 -29
- data/lib/wlang/rulesets/context_ruleset.rb +16 -20
- data/lib/wlang/rulesets/imperative_ruleset.rb +4 -4
- data/lib/wlang/rulesets/ruleset_utils.rb +26 -5
- data/lib/wlang/template.rb +16 -34
- data/lib/wlang/wlang_command.rb +4 -7
- data/lib/wlang/wlang_command_options.rb +5 -0
- data/test/blackbox/basic/execution_1.exp +1 -0
- data/test/blackbox/basic/execution_1.tpl +1 -0
- data/test/blackbox/basic/execution_2.exp +1 -0
- data/test/blackbox/basic/execution_2.tpl +1 -0
- data/test/blackbox/basic/execution_3.exp +1 -0
- data/test/blackbox/basic/execution_3.tpl +1 -0
- data/test/blackbox/basic/execution_4.exp +1 -0
- data/test/blackbox/basic/execution_4.tpl +1 -0
- data/test/blackbox/basic/inclusion_1.exp +1 -0
- data/test/blackbox/basic/inclusion_1.tpl +1 -0
- data/test/blackbox/basic/inclusion_2.exp +1 -0
- data/test/blackbox/basic/inclusion_2.tpl +1 -0
- data/test/blackbox/basic/injection_1.exp +1 -0
- data/test/blackbox/basic/injection_1.tpl +1 -0
- data/test/blackbox/basic/injection_2.exp +1 -0
- data/test/blackbox/basic/injection_2.tpl +1 -0
- data/test/blackbox/basic/modulation_1.exp +1 -0
- data/test/blackbox/basic/modulation_1.tpl +1 -0
- data/test/blackbox/basic/modulation_2.exp +1 -0
- data/test/blackbox/basic/modulation_2.tpl +1 -0
- data/test/blackbox/basic/recursive_app_1.exp +1 -0
- data/test/blackbox/basic/recursive_app_1.tpl +1 -0
- data/test/blackbox/basic/recursive_app_2.exp +1 -0
- data/test/blackbox/basic/recursive_app_2.tpl +1 -0
- data/test/blackbox/buffering/data_1.rb +1 -0
- data/test/blackbox/buffering/data_assignment_1.exp +1 -0
- data/test/blackbox/buffering/data_assignment_1.tpl +1 -0
- data/test/blackbox/buffering/data_assignment_2.exp +1 -0
- data/test/blackbox/buffering/data_assignment_2.tpl +1 -0
- data/test/blackbox/buffering/data_assignment_3.exp +1 -0
- data/test/blackbox/buffering/data_assignment_3.tpl +1 -0
- data/test/blackbox/buffering/data_assignment_4.exp +1 -0
- data/test/blackbox/buffering/data_assignment_4.tpl +1 -0
- data/test/blackbox/buffering/input_1.exp +1 -0
- data/test/blackbox/buffering/input_1.tpl +1 -0
- data/test/blackbox/buffering/input_2.exp +1 -0
- data/test/blackbox/buffering/input_2.tpl +1 -0
- data/test/blackbox/buffering/input_3.exp +1 -0
- data/test/blackbox/buffering/input_3.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion.exp +1 -0
- data/test/blackbox/buffering/input_inclusion.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_1.exp +0 -0
- data/test/blackbox/buffering/input_inclusion_1.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_2.exp +1 -0
- data/test/blackbox/buffering/input_inclusion_2.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_3.exp +1 -0
- data/test/blackbox/buffering/input_inclusion_3.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_4.exp +0 -0
- data/test/blackbox/buffering/input_inclusion_4.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_5.exp +1 -0
- data/test/blackbox/buffering/input_inclusion_5.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_6.exp +1 -0
- data/test/blackbox/buffering/input_inclusion_6.tpl +1 -0
- data/test/blackbox/buffering/input_inclusion_7.exp +0 -0
- data/test/blackbox/buffering/input_inclusion_7.tpl +1 -0
- data/test/blackbox/buffering/text_1.txt +1 -0
- data/test/blackbox/buffering/wlang.txt +1 -0
- data/test/blackbox/context/assignment_1.exp +1 -0
- data/test/blackbox/context/assignment_1.tpl +1 -0
- data/test/blackbox/context/assignment_2.exp +1 -0
- data/test/blackbox/context/assignment_2.tpl +1 -0
- data/test/blackbox/context/assignment_3.exp +2 -0
- data/test/blackbox/context/assignment_3.tpl +2 -0
- data/test/blackbox/context/assignment_4.exp +1 -0
- data/test/blackbox/context/assignment_4.tpl +1 -0
- data/test/blackbox/context/block_assignment_1.exp +1 -0
- data/test/blackbox/context/block_assignment_1.tpl +1 -0
- data/test/blackbox/context/block_assignment_2.exp +1 -0
- data/test/blackbox/context/block_assignment_2.tpl +1 -0
- data/test/blackbox/context/modulo_assignment_1.exp +1 -0
- data/test/blackbox/context/modulo_assignment_1.tpl +1 -0
- data/test/blackbox/context/modulo_assignment_2.exp +1 -0
- data/test/blackbox/context/modulo_assignment_2.tpl +1 -0
- data/test/blackbox/data_1.rb +1 -0
- data/test/blackbox/test_all.rb +59 -0
- data/test/spec/basic_object.spec +40 -0
- data/test/spec/global_extensions.rb +2 -0
- data/test/spec/hash_scope.spec +76 -0
- data/test/spec/redcloth_dialect.spec +24 -0
- data/test/spec/test_all.rb +8 -0
- data/test/spec/wlang.spec +53 -0
- data/test/spec/xhtml_dialect.spec +23 -0
- data/test/{test_all.rb → unit/test_all.rb} +1 -1
- data/test/{wlang → unit/wlang}/anagram_bugs_test.rb +2 -2
- data/test/{wlang → unit/wlang}/basic_ruleset_test.rb +1 -1
- data/test/{wlang → unit/wlang}/buffering_ruleset_test.rb +4 -4
- data/test/{wlang → unit/wlang}/buffering_template1.wtpl +0 -0
- data/test/{wlang → unit/wlang}/buffering_template2.wtpl +0 -0
- data/test/{wlang → unit/wlang}/buffering_template3.wtpl +0 -0
- data/test/unit/wlang/buffering_template4.wtpl +1 -0
- data/test/unit/wlang/buffering_template5.wtpl +1 -0
- data/test/{wlang → unit/wlang}/context_ruleset_test.rb +0 -0
- data/test/{wlang → unit/wlang}/data.rb +0 -0
- data/test/{wlang → unit/wlang}/encoder_set_test.rb +0 -0
- data/test/{wlang → unit/wlang}/imperative_ruleset_test.rb +0 -0
- data/test/{wlang → unit/wlang}/intelligent_buffer_test.rb +0 -0
- data/test/{wlang → unit/wlang}/othersymbols_test.rb +0 -0
- data/test/{wlang → unit/wlang}/parser_test.rb +10 -11
- data/test/{wlang → unit/wlang}/plain_text_dialect_test.rb +0 -0
- data/test/{wlang → unit/wlang}/ruby_dialect_test.rb +0 -0
- data/test/{wlang → unit/wlang}/ruby_expected.rb +0 -0
- data/test/{wlang → unit/wlang}/ruby_template.wrb +0 -0
- data/test/{wlang → unit/wlang}/ruleset_utils_test.rb +0 -0
- data/test/{wlang → unit/wlang}/specification_examples_test.rb +2 -2
- data/test/{wlang → unit/wlang}/test_utils.rb +1 -1
- data/test/{wlang → unit/wlang}/wlang_test.rb +0 -0
- metadata +135 -42
- data/lib/wlang/basic_object.rb +0 -19
- data/lib/wlang/parser_context.rb +0 -139
- data/test/sandbox.rb +0 -1
- data/test/wlang/buffering_template4.wtpl +0 -1
- data/test/wlang/buffering_template5.wtpl +0 -1
- data/test/wlang/parser_context_test.rb +0 -29
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'wlang'
|
2
|
+
describe ::WLang do
|
3
|
+
|
4
|
+
it("should allow easy use of encoders") {
|
5
|
+
WLang::encode('&', 'xhtml/entities-encoding').should == '&'
|
6
|
+
WLang::encode("O'Neil", 'ruby/single-quoting').should == "O\\'Neil"
|
7
|
+
WLang::encode('O"Neil', 'ruby/double-quoting').should == 'O\\"Neil'
|
8
|
+
WLang::encode("O'Neil", 'sql/single-quoting').should == "O\\'Neil"
|
9
|
+
WLang::encode("O'Neil", 'sql/sybase/single-quoting').should == "O''Neil"
|
10
|
+
}
|
11
|
+
|
12
|
+
it "should allow easy upper camel casing" do
|
13
|
+
WLang::encode('hello_world', 'plain-text/camel-case').should == "HelloWorld"
|
14
|
+
WLang::encode('hello_world', 'plain-text/camel').should == "HelloWorld"
|
15
|
+
WLang::encode('hello_world', 'plain-text/upper-camel').should == "HelloWorld"
|
16
|
+
WLang::encode('this is another example', 'plain-text/camel-case').should == "ThisIsAnotherExample"
|
17
|
+
WLang::encode("this is yet \n another example", 'plain-text/camel-case').should == "ThisIsYetAnotherExample"
|
18
|
+
|
19
|
+
WLang::encode('hello_world', 'plain-text/lower-camel').should == "helloWorld"
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should allow easy ruby method casing" do
|
23
|
+
WLang::encode('helloWorld', 'ruby/method-case').should == "hello_world"
|
24
|
+
WLang::encode('HelloWorld', 'ruby/method-case').should == "hello_world"
|
25
|
+
WLang::encode('hello world', 'ruby/method-case').should == "hello_world"
|
26
|
+
WLang::encode('Hello123World', 'ruby/method-case').should == "hello123_world"
|
27
|
+
WLang::encode('HelloWorld_123', 'ruby/method-case').should == "hello_world_123"
|
28
|
+
WLang::encode('123_HelloWorld', 'ruby/method-case').should == "_123_hello_world"
|
29
|
+
end
|
30
|
+
|
31
|
+
it "should have correct examples in README.rdoc" do
|
32
|
+
expected = "Hello world!"
|
33
|
+
"Hello ${who}!".wlang(:who => 'world').should == expected
|
34
|
+
|
35
|
+
expected = "Hello cruel & world!"
|
36
|
+
"Hello ${who}!".wlang({:who => 'cruel & world'}, 'wlang/xhtml').should == expected
|
37
|
+
|
38
|
+
expected = "Hello blambeau, llambeau"
|
39
|
+
"Hello *{authors as a}{${a}}{, }".wlang(:authors => ['blambeau', 'llambeau']).should == expected
|
40
|
+
|
41
|
+
expected = "INSERT INTO people VALUES ('O\\'Neil')"
|
42
|
+
"INSERT INTO people VALUES ('{who}')".wlang({:who => "O'Neil"}, 'wlang/sql')
|
43
|
+
|
44
|
+
expected = "Hello wlang!"
|
45
|
+
tpl = "Hello $(${varname})!".wlang(:varname => 'who')
|
46
|
+
tpl.wlang({:who => 'wlang'}, 'wlang/active-string', :parentheses).should == expected
|
47
|
+
|
48
|
+
context = {:varname => 'who', :who => 'wlang'}
|
49
|
+
expected = "Hello wlang!"
|
50
|
+
"Hello ${${varname}}!".wlang(context).should == expected
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require "wlang"
|
2
|
+
|
3
|
+
describe "The wlang/xhtml dialect" do
|
4
|
+
|
5
|
+
it("should provide helpers to create links") {
|
6
|
+
"@{/details}".wlang({}, 'wlang/xhtml').should == "/details"
|
7
|
+
"@{/details}{Details}".wlang({}, 'wlang/xhtml').should == '<a href="/details">Details</a>'
|
8
|
+
}
|
9
|
+
|
10
|
+
it("should provide to_xhtml_link callback on links") {
|
11
|
+
::String.module_eval do
|
12
|
+
def to_xhtml_link(url, label)
|
13
|
+
"#{url}:#{label}"
|
14
|
+
end
|
15
|
+
def to_xhtml_href(url)
|
16
|
+
"Hello:#{url}"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
"@{/details}{Details}".wlang({}, 'wlang/xhtml').should == '/details:Details'
|
20
|
+
"@{/details}".wlang({}, 'wlang/xhtml').should == 'Hello:/details'
|
21
|
+
}
|
22
|
+
|
23
|
+
end
|
@@ -25,7 +25,7 @@ module WLang
|
|
25
25
|
}
|
26
26
|
}.gsub(/^ {8}/, '').strip
|
27
27
|
result = template.wlang_instantiate({}, "anagram")
|
28
|
-
assert IntelligentBuffer===result
|
28
|
+
#assert IntelligentBuffer===result
|
29
29
|
# assert_equal("this is an anagram template", result)
|
30
30
|
|
31
31
|
template = %q{
|
@@ -35,7 +35,7 @@ module WLang
|
|
35
35
|
}
|
36
36
|
}.gsub(/^ {8}/, '').strip
|
37
37
|
result = template.wlang_instantiate({}, "anagram")
|
38
|
-
assert IntelligentBuffer===result
|
38
|
+
#assert IntelligentBuffer===result
|
39
39
|
assert_equal("module MyModule\nend\n", result)
|
40
40
|
end
|
41
41
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test/unit'
|
2
2
|
require 'wlang'
|
3
|
-
require '
|
3
|
+
require File.join(File.dirname(__FILE__), 'test_utils.rb')
|
4
4
|
require 'wlang/rulesets/buffering_ruleset'
|
5
5
|
|
6
6
|
# Tests the Scoping ruleset
|
@@ -31,7 +31,7 @@ class WLang::BufferingRuleSetTest < Test::Unit::TestCase
|
|
31
31
|
def test_input_accepts_injection
|
32
32
|
expected = read_relative_file("ruby_template.wrb", __FILE__)
|
33
33
|
template = relative_template("<<{ruby_template.wrb}", "buffering-test", __FILE__)
|
34
|
-
result = template.instantiate("
|
34
|
+
result = template.instantiate("ext" => "wrb")
|
35
35
|
assert_equal(expected, result)
|
36
36
|
end
|
37
37
|
|
@@ -40,7 +40,7 @@ class WLang::BufferingRuleSetTest < Test::Unit::TestCase
|
|
40
40
|
output = relative_file("buffering_ruleset_test_output.txt", __FILE__)
|
41
41
|
File.delete(output) if File.exists?(output)
|
42
42
|
template = relative_template(">>{buffering_ruleset_test_output.txt}{an output}", "buffering-test", __FILE__)
|
43
|
-
assert_equal("", template.instantiate
|
43
|
+
assert_equal("", template.instantiate)
|
44
44
|
assert_equal("an output", File.read(output))
|
45
45
|
File.delete(output) if File.exists?(output)
|
46
46
|
end
|
@@ -50,7 +50,7 @@ class WLang::BufferingRuleSetTest < Test::Unit::TestCase
|
|
50
50
|
output = relative_file("buffering_ruleset_test_output.txt", __FILE__)
|
51
51
|
File.delete(output) if File.exists?(output)
|
52
52
|
template = relative_template(">>{buffering_ruleset_test_output.${ext}}{an output}", "buffering-test", __FILE__)
|
53
|
-
assert_equal("", template.instantiate("
|
53
|
+
assert_equal("", template.instantiate("ext" => "txt"))
|
54
54
|
assert_equal("an output", File.read(output))
|
55
55
|
File.delete(output) if File.exists?(output)
|
56
56
|
end
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
<<+{buffering_template5.wtpl share all with who2: who, hello: 'world'}
|
@@ -0,0 +1 @@
|
|
1
|
+
+{who2} +{hello}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -21,42 +21,41 @@ class ParserTest < Test::Unit::TestCase
|
|
21
21
|
|
22
22
|
# Instantiate the given string as template
|
23
23
|
def instantiate_str(str)
|
24
|
-
|
24
|
+
WLang::template(str, "example").instantiate
|
25
25
|
end
|
26
26
|
|
27
27
|
# Asserts the result of an instanciation
|
28
|
-
def
|
29
|
-
template =
|
30
|
-
|
31
|
-
assert_equal(expected, parser.instantiate()[0])
|
28
|
+
def assert_instantiation_equal(expected, template, msg=nil)
|
29
|
+
template = WLang::template(template, "example")
|
30
|
+
assert_equal(expected, template.instantiate)
|
32
31
|
end
|
33
32
|
|
34
33
|
def test_parser_accepts_whole_tag
|
35
34
|
template, expected = "+{hello}", "HELLO"
|
36
|
-
|
35
|
+
assert_instantiation_equal(expected, template)
|
37
36
|
template, expected = " +{hello} ", " HELLO "
|
38
|
-
|
37
|
+
assert_instantiation_equal(expected, template)
|
39
38
|
end
|
40
39
|
|
41
40
|
def test_parser_accepts_whole_block
|
42
41
|
template, expected = "{hello}", "{hello}"
|
43
|
-
|
42
|
+
assert_instantiation_equal(expected, template)
|
44
43
|
end
|
45
44
|
|
46
45
|
def test_parser_ignores_backslashed_tags
|
47
46
|
template, expected = "\\+{hello\\}", "+{hello}"
|
48
|
-
|
47
|
+
assert_instantiation_equal(expected, template)
|
49
48
|
end
|
50
49
|
|
51
50
|
def test_parser_ignores_backslashed_blocks
|
52
51
|
template, expected = "\\{hello\\} world", "{hello} world"
|
53
|
-
|
52
|
+
assert_instantiation_equal(expected, template)
|
54
53
|
end
|
55
54
|
|
56
55
|
def test_parser_on_a_complex_case
|
57
56
|
template = "Hello \\\\} world! -{ITEMS AS I}{do +{something} \\{with \\} i} here is my name:+{name} and { that's not -{COMMON} text } !\\{"
|
58
57
|
expected = "Hello \\} world! items as i{do SOMETHING {with } i} here is my name:NAME and { that's not common text } !\{"
|
59
|
-
|
58
|
+
assert_instantiation_equal(expected, template)
|
60
59
|
end
|
61
60
|
|
62
61
|
def test_parser_raises_error
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'test/unit
|
1
|
+
require 'test/unit'
|
2
2
|
require 'wlang'
|
3
3
|
require 'wlang/dialects/standard_dialects'
|
4
4
|
require "yaml"
|
@@ -11,7 +11,7 @@ class WLang::SpecificationExamplesTest < Test::Unit::TestCase
|
|
11
11
|
context = {"name" => "O'Neil",
|
12
12
|
"author" => "blambeau",
|
13
13
|
"authors" => ["blambeau", "llambeau", "ancailliau"]}
|
14
|
-
spec_file = File.join(File.dirname(__FILE__),"
|
14
|
+
spec_file = File.join(File.dirname(__FILE__),"../../../doc/specification/specification.yml")
|
15
15
|
spec = YAML.load(File.open(spec_file))
|
16
16
|
spec["rulesets"].each do |ruleset|
|
17
17
|
next if ruleset["examples"].nil?
|
@@ -17,7 +17,7 @@ module WLang::TestUtils
|
|
17
17
|
|
18
18
|
# Factors a template and fakes its source-file as from
|
19
19
|
def relative_template(src, dialect, from=__FILE__)
|
20
|
-
template = WLang::
|
20
|
+
template = WLang::template(src, dialect)
|
21
21
|
template.source_file = from
|
22
22
|
template
|
23
23
|
end
|
File without changes
|
metadata
CHANGED
@@ -1,7 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wlang
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 57
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 9
|
9
|
+
- 1
|
10
|
+
version: 0.9.1
|
5
11
|
platform: ruby
|
6
12
|
authors:
|
7
13
|
- Bernard Lambeau
|
@@ -9,7 +15,7 @@ autorequire:
|
|
9
15
|
bindir: bin
|
10
16
|
cert_chain: []
|
11
17
|
|
12
|
-
date: 2010-
|
18
|
+
date: 2010-05-20 00:00:00 +02:00
|
13
19
|
default_executable:
|
14
20
|
dependencies: []
|
15
21
|
|
@@ -22,16 +28,15 @@ extensions: []
|
|
22
28
|
extra_rdoc_files:
|
23
29
|
- README.rdoc
|
24
30
|
- LICENCE.rdoc
|
31
|
+
- CHANGELOG.rdoc
|
25
32
|
files:
|
26
|
-
- lib/wlang
|
27
|
-
- lib/wlang/basic_object.rb
|
28
33
|
- lib/wlang/dialect.rb
|
29
34
|
- lib/wlang/dialect_dsl.rb
|
30
35
|
- lib/wlang/dialect_loader.rb
|
31
|
-
- lib/wlang/dialects
|
32
36
|
- lib/wlang/dialects/coderay_dialect.rb
|
33
37
|
- lib/wlang/dialects/plain_text_dialect.rb
|
34
38
|
- lib/wlang/dialects/rdoc_dialect.rb
|
39
|
+
- lib/wlang/dialects/redcloth_dialect.rb
|
35
40
|
- lib/wlang/dialects/ruby_dialect.rb
|
36
41
|
- lib/wlang/dialects/sql_dialect.rb
|
37
42
|
- lib/wlang/dialects/standard_dialects.rb
|
@@ -39,13 +44,15 @@ files:
|
|
39
44
|
- lib/wlang/encoder.rb
|
40
45
|
- lib/wlang/encoder_set.rb
|
41
46
|
- lib/wlang/errors.rb
|
47
|
+
- lib/wlang/ext/hash_methodize.rb
|
48
|
+
- lib/wlang/ext/string.rb
|
49
|
+
- lib/wlang/hash_scope.rb
|
50
|
+
- lib/wlang/hosted_language.rb
|
42
51
|
- lib/wlang/intelligent_buffer.rb
|
43
52
|
- lib/wlang/parser.rb
|
44
|
-
- lib/wlang/
|
45
|
-
- lib/wlang/ruby_extensions.rb
|
53
|
+
- lib/wlang/parser_state.rb
|
46
54
|
- lib/wlang/rule.rb
|
47
55
|
- lib/wlang/rule_set.rb
|
48
|
-
- lib/wlang/rulesets
|
49
56
|
- lib/wlang/rulesets/basic_ruleset.rb
|
50
57
|
- lib/wlang/rulesets/buffering_ruleset.rb
|
51
58
|
- lib/wlang/rulesets/context_ruleset.rb
|
@@ -56,38 +63,115 @@ files:
|
|
56
63
|
- lib/wlang/wlang_command.rb
|
57
64
|
- lib/wlang/wlang_command_options.rb
|
58
65
|
- lib/wlang.rb
|
59
|
-
- test/
|
60
|
-
- test/
|
61
|
-
- test/
|
62
|
-
- test/
|
63
|
-
- test/
|
64
|
-
- test/
|
65
|
-
- test/
|
66
|
-
- test/
|
67
|
-
- test/
|
68
|
-
- test/
|
69
|
-
- test/
|
70
|
-
- test/
|
71
|
-
- test/
|
72
|
-
- test/
|
73
|
-
- test/
|
74
|
-
- test/
|
75
|
-
- test/
|
76
|
-
- test/
|
77
|
-
- test/
|
78
|
-
- test/
|
79
|
-
- test/
|
80
|
-
- test/
|
81
|
-
- test/
|
82
|
-
- test/
|
83
|
-
- test/
|
84
|
-
- test/
|
85
|
-
- test/
|
86
|
-
- test/
|
87
|
-
- test/
|
88
|
-
- test/
|
66
|
+
- test/blackbox/basic/execution_1.exp
|
67
|
+
- test/blackbox/basic/execution_1.tpl
|
68
|
+
- test/blackbox/basic/execution_2.exp
|
69
|
+
- test/blackbox/basic/execution_2.tpl
|
70
|
+
- test/blackbox/basic/execution_3.exp
|
71
|
+
- test/blackbox/basic/execution_3.tpl
|
72
|
+
- test/blackbox/basic/execution_4.exp
|
73
|
+
- test/blackbox/basic/execution_4.tpl
|
74
|
+
- test/blackbox/basic/inclusion_1.exp
|
75
|
+
- test/blackbox/basic/inclusion_1.tpl
|
76
|
+
- test/blackbox/basic/inclusion_2.exp
|
77
|
+
- test/blackbox/basic/inclusion_2.tpl
|
78
|
+
- test/blackbox/basic/injection_1.exp
|
79
|
+
- test/blackbox/basic/injection_1.tpl
|
80
|
+
- test/blackbox/basic/injection_2.exp
|
81
|
+
- test/blackbox/basic/injection_2.tpl
|
82
|
+
- test/blackbox/basic/modulation_1.exp
|
83
|
+
- test/blackbox/basic/modulation_1.tpl
|
84
|
+
- test/blackbox/basic/modulation_2.exp
|
85
|
+
- test/blackbox/basic/modulation_2.tpl
|
86
|
+
- test/blackbox/basic/recursive_app_1.exp
|
87
|
+
- test/blackbox/basic/recursive_app_1.tpl
|
88
|
+
- test/blackbox/basic/recursive_app_2.exp
|
89
|
+
- test/blackbox/basic/recursive_app_2.tpl
|
90
|
+
- test/blackbox/buffering/data_1.rb
|
91
|
+
- test/blackbox/buffering/data_assignment_1.exp
|
92
|
+
- test/blackbox/buffering/data_assignment_1.tpl
|
93
|
+
- test/blackbox/buffering/data_assignment_2.exp
|
94
|
+
- test/blackbox/buffering/data_assignment_2.tpl
|
95
|
+
- test/blackbox/buffering/data_assignment_3.exp
|
96
|
+
- test/blackbox/buffering/data_assignment_3.tpl
|
97
|
+
- test/blackbox/buffering/data_assignment_4.exp
|
98
|
+
- test/blackbox/buffering/data_assignment_4.tpl
|
99
|
+
- test/blackbox/buffering/input_1.exp
|
100
|
+
- test/blackbox/buffering/input_1.tpl
|
101
|
+
- test/blackbox/buffering/input_2.exp
|
102
|
+
- test/blackbox/buffering/input_2.tpl
|
103
|
+
- test/blackbox/buffering/input_3.exp
|
104
|
+
- test/blackbox/buffering/input_3.tpl
|
105
|
+
- test/blackbox/buffering/input_inclusion.exp
|
106
|
+
- test/blackbox/buffering/input_inclusion.tpl
|
107
|
+
- test/blackbox/buffering/input_inclusion_1.exp
|
108
|
+
- test/blackbox/buffering/input_inclusion_1.tpl
|
109
|
+
- test/blackbox/buffering/input_inclusion_2.exp
|
110
|
+
- test/blackbox/buffering/input_inclusion_2.tpl
|
111
|
+
- test/blackbox/buffering/input_inclusion_3.exp
|
112
|
+
- test/blackbox/buffering/input_inclusion_3.tpl
|
113
|
+
- test/blackbox/buffering/input_inclusion_4.exp
|
114
|
+
- test/blackbox/buffering/input_inclusion_4.tpl
|
115
|
+
- test/blackbox/buffering/input_inclusion_5.exp
|
116
|
+
- test/blackbox/buffering/input_inclusion_5.tpl
|
117
|
+
- test/blackbox/buffering/input_inclusion_6.exp
|
118
|
+
- test/blackbox/buffering/input_inclusion_6.tpl
|
119
|
+
- test/blackbox/buffering/input_inclusion_7.exp
|
120
|
+
- test/blackbox/buffering/input_inclusion_7.tpl
|
121
|
+
- test/blackbox/buffering/text_1.txt
|
122
|
+
- test/blackbox/buffering/wlang.txt
|
123
|
+
- test/blackbox/context/assignment_1.exp
|
124
|
+
- test/blackbox/context/assignment_1.tpl
|
125
|
+
- test/blackbox/context/assignment_2.exp
|
126
|
+
- test/blackbox/context/assignment_2.tpl
|
127
|
+
- test/blackbox/context/assignment_3.exp
|
128
|
+
- test/blackbox/context/assignment_3.tpl
|
129
|
+
- test/blackbox/context/assignment_4.exp
|
130
|
+
- test/blackbox/context/assignment_4.tpl
|
131
|
+
- test/blackbox/context/block_assignment_1.exp
|
132
|
+
- test/blackbox/context/block_assignment_1.tpl
|
133
|
+
- test/blackbox/context/block_assignment_2.exp
|
134
|
+
- test/blackbox/context/block_assignment_2.tpl
|
135
|
+
- test/blackbox/context/modulo_assignment_1.exp
|
136
|
+
- test/blackbox/context/modulo_assignment_1.tpl
|
137
|
+
- test/blackbox/context/modulo_assignment_2.exp
|
138
|
+
- test/blackbox/context/modulo_assignment_2.tpl
|
139
|
+
- test/blackbox/data_1.rb
|
140
|
+
- test/blackbox/test_all.rb
|
141
|
+
- test/spec/basic_object.spec
|
142
|
+
- test/spec/global_extensions.rb
|
143
|
+
- test/spec/hash_scope.spec
|
144
|
+
- test/spec/redcloth_dialect.spec
|
145
|
+
- test/spec/test_all.rb
|
146
|
+
- test/spec/wlang.spec
|
147
|
+
- test/spec/xhtml_dialect.spec
|
148
|
+
- test/unit/test_all.rb
|
149
|
+
- test/unit/wlang/anagram_bugs_test.rb
|
150
|
+
- test/unit/wlang/basic_ruleset_test.rb
|
151
|
+
- test/unit/wlang/buffering_ruleset_test.rb
|
152
|
+
- test/unit/wlang/buffering_template1.wtpl
|
153
|
+
- test/unit/wlang/buffering_template2.wtpl
|
154
|
+
- test/unit/wlang/buffering_template3.wtpl
|
155
|
+
- test/unit/wlang/buffering_template4.wtpl
|
156
|
+
- test/unit/wlang/buffering_template5.wtpl
|
157
|
+
- test/unit/wlang/context_ruleset_test.rb
|
158
|
+
- test/unit/wlang/data.rb
|
159
|
+
- test/unit/wlang/encoder_set_test.rb
|
160
|
+
- test/unit/wlang/imperative_ruleset_test.rb
|
161
|
+
- test/unit/wlang/intelligent_buffer_test.rb
|
162
|
+
- test/unit/wlang/othersymbols_test.rb
|
163
|
+
- test/unit/wlang/parser_test.rb
|
164
|
+
- test/unit/wlang/plain_text_dialect_test.rb
|
165
|
+
- test/unit/wlang/ruby_dialect_test.rb
|
166
|
+
- test/unit/wlang/ruby_expected.rb
|
167
|
+
- test/unit/wlang/ruby_template.wrb
|
168
|
+
- test/unit/wlang/ruleset_utils_test.rb
|
169
|
+
- test/unit/wlang/specification_examples_test.rb
|
170
|
+
- test/unit/wlang/test_utils.rb
|
171
|
+
- test/unit/wlang/wlang_test.rb
|
89
172
|
- bin/wlang
|
90
173
|
- doc/specification/about.rdoc
|
174
|
+
- doc/specification/dialect.wtpl
|
91
175
|
- doc/specification/dialects.wtpl
|
92
176
|
- doc/specification/examples.rb
|
93
177
|
- doc/specification/glossary.wtpl
|
@@ -102,8 +186,11 @@ files:
|
|
102
186
|
- doc/specification/symbols.wtpl
|
103
187
|
- README.rdoc
|
104
188
|
- LICENCE.rdoc
|
189
|
+
- CHANGELOG.rdoc
|
105
190
|
has_rdoc: true
|
106
191
|
homepage: http://blambeau.github.com/wlang/
|
192
|
+
licenses: []
|
193
|
+
|
107
194
|
post_install_message:
|
108
195
|
rdoc_options:
|
109
196
|
- --title
|
@@ -114,23 +201,29 @@ rdoc_options:
|
|
114
201
|
require_paths:
|
115
202
|
- lib
|
116
203
|
required_ruby_version: !ruby/object:Gem::Requirement
|
204
|
+
none: false
|
117
205
|
requirements:
|
118
206
|
- - ">="
|
119
207
|
- !ruby/object:Gem::Version
|
208
|
+
hash: 3
|
209
|
+
segments:
|
210
|
+
- 0
|
120
211
|
version: "0"
|
121
|
-
version:
|
122
212
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
213
|
+
none: false
|
123
214
|
requirements:
|
124
215
|
- - ">="
|
125
216
|
- !ruby/object:Gem::Version
|
217
|
+
hash: 3
|
218
|
+
segments:
|
219
|
+
- 0
|
126
220
|
version: "0"
|
127
|
-
version:
|
128
221
|
requirements: []
|
129
222
|
|
130
223
|
rubyforge_project:
|
131
|
-
rubygems_version: 1.3.
|
224
|
+
rubygems_version: 1.3.7
|
132
225
|
signing_key:
|
133
|
-
specification_version:
|
226
|
+
specification_version: 3
|
134
227
|
summary: WLang code generator
|
135
228
|
test_files: []
|
136
229
|
|