sexpr 0.6.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +7 -1
- data/Gemfile +1 -8
- data/README.md +26 -4
- data/lib/sexpr/version.rb +2 -2
- data/lib/sexpr.rb +11 -3
- data/spec/integration/bool_expr/test_validation.rb +4 -4
- data/spec/integration/test_readme_examples.rb +4 -4
- data/spec/spec_helper.rb +1 -0
- data/spec/unit/grammar/matching/test_compile_rule_defn.rb +2 -2
- data/spec/unit/grammar/matching/test_compile_rules.rb +1 -1
- data/spec/unit/grammar/tagging/test_looks_a_sexpr.rb +4 -4
- data/spec/unit/matcher/non_terminal/test_match_q.rb +2 -2
- data/spec/unit/matcher/reference/test_match_q.rb +1 -1
- data/spec/unit/matcher/terminal/test_match_q.rb +3 -3
- data/spec/unit/matcher/terminal/test_terminal_match.rb +28 -28
- data/spec/unit/parser/citrus/test_recognize.rb +1 -1
- data/spec/unit/test_sexpr.rb +1 -1
- data/tasks/test.rake +5 -20
- metadata +33 -141
- data/Gemfile.lock +0 -27
- data/LICENCE.md +0 -22
- data/Manifest.txt +0 -16
- data/examples/bool_expr/bool_expr.citrus +0 -72
- data/examples/bool_expr/bool_expr.rb +0 -59
- data/examples/bool_expr/bool_expr.sexp.yml +0 -23
- data/lib/sexpr/loader.rb +0 -1
- data/sexpr.gemspec +0 -189
- data/sexpr.noespec +0 -33
- data/tasks/debug_mail.rake +0 -75
- data/tasks/debug_mail.txt +0 -13
- data/tasks/yard.rake +0 -51
data/sexpr.noespec
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
template-info:
|
2
|
-
name: "rubygem.noe"
|
3
|
-
version: 2.0.1
|
4
|
-
links:
|
5
|
-
source: https://github.com/blambeau/noe
|
6
|
-
manifest:
|
7
|
-
tasks/unit_test.rake:
|
8
|
-
ignore: true
|
9
|
-
safe_override: false
|
10
|
-
tasks/spec_test.rake:
|
11
|
-
ignore: true
|
12
|
-
safe_override: false
|
13
|
-
variables:
|
14
|
-
lower:
|
15
|
-
sexpr
|
16
|
-
upper:
|
17
|
-
Sexpr
|
18
|
-
version:
|
19
|
-
0.6.0
|
20
|
-
summary: |-
|
21
|
-
A compilation framework around s-expressions
|
22
|
-
description: |-
|
23
|
-
Sexpr helps manipulating s-expressions in ruby.
|
24
|
-
authors:
|
25
|
-
- {name: Bernard Lambeau, email: blambeau@gmail.com}
|
26
|
-
links:
|
27
|
-
- https://github.com/blambeau/sexp
|
28
|
-
dependencies:
|
29
|
-
- {name: path, version: "~> 1.3", groups: [development]}
|
30
|
-
- {name: citrus, version: "~> 2.4", groups: [development]}
|
31
|
-
- {name: rake, version: "~> 10.0", groups: [development]}
|
32
|
-
- {name: rspec, version: "~> 2.10", groups: [development]}
|
33
|
-
- {name: wlang, version: "~> 0.10.2", groups: [development]}
|
data/tasks/debug_mail.rake
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
# Installs a rake task for debuging the announcement mail.
|
2
|
-
#
|
3
|
-
# This file installs the 'rake debug_mail' that flushes an announcement mail
|
4
|
-
# for your library on the standard output. It is automatically generated
|
5
|
-
# by Noe from your .noespec file, and should therefore be configured there,
|
6
|
-
# under the variables/rake_tasks/debug_mail entry, as illustrated below:
|
7
|
-
#
|
8
|
-
# variables:
|
9
|
-
# rake_tasks:
|
10
|
-
# debug_mail:
|
11
|
-
# rx_changelog_sections: /^#/
|
12
|
-
# nb_changelog_sections: 1
|
13
|
-
# ...
|
14
|
-
#
|
15
|
-
# If you have specific needs requiring manual intervention on this file,
|
16
|
-
# don't forget to set safe-override to false in your noe specification:
|
17
|
-
#
|
18
|
-
# template-info:
|
19
|
-
# manifest:
|
20
|
-
# tasks/debug_mail.rake:
|
21
|
-
# safe-override: false
|
22
|
-
#
|
23
|
-
# The mail template used can be found in debug_mail.txt. That file may be
|
24
|
-
# changed to tune the mail you want to send. If you do so, don't forget to
|
25
|
-
# add a manifest entry in your .noespec file to avoid overriding you
|
26
|
-
# changes. The mail template uses wlang, with parentheses for block
|
27
|
-
# delimiters.
|
28
|
-
#
|
29
|
-
# template-info:
|
30
|
-
# manifest:
|
31
|
-
# tasks/debug_mail.txt:
|
32
|
-
# safe-override: false
|
33
|
-
#
|
34
|
-
desc "Debug the release announcement mail"
|
35
|
-
task :debug_mail do
|
36
|
-
begin
|
37
|
-
require 'wlang'
|
38
|
-
rescue LoadError
|
39
|
-
abort "wlang is not available. Try 'gem install wlang'"
|
40
|
-
end
|
41
|
-
require 'yaml'
|
42
|
-
|
43
|
-
# Check that a .noespec file exists
|
44
|
-
noespec_file = File.expand_path('../../sexpr.noespec', __FILE__)
|
45
|
-
unless File.exists?(noespec_file)
|
46
|
-
raise "Unable to find .noespec project file, sorry."
|
47
|
-
end
|
48
|
-
|
49
|
-
# Load it as well as variables and options
|
50
|
-
noespec = YAML::load(File.read(noespec_file))
|
51
|
-
vars = noespec['variables'] || {}
|
52
|
-
|
53
|
-
# Changes are taken from CHANGELOG
|
54
|
-
logs = Dir[File.expand_path("../../CHANGELOG.*", __FILE__)]
|
55
|
-
unless logs.size == 1
|
56
|
-
abort "Unable to find a changelog file"
|
57
|
-
end
|
58
|
-
|
59
|
-
# Load interesting changesets
|
60
|
-
changes, end_found = [], 0
|
61
|
-
File.readlines(logs.first).select{|line|
|
62
|
-
if line =~ /^# /
|
63
|
-
break if end_found >= 1
|
64
|
-
end_found += 1
|
65
|
-
end
|
66
|
-
changes << line
|
67
|
-
}
|
68
|
-
vars['changes'] = changes.join
|
69
|
-
|
70
|
-
# WLang template
|
71
|
-
template = File.expand_path('../debug_mail.txt', __FILE__)
|
72
|
-
|
73
|
-
# Let's go!
|
74
|
-
$stdout << WLang::file_instantiate(template, vars, "wlang/active-text")
|
75
|
-
end
|
data/tasks/debug_mail.txt
DELETED
data/tasks/yard.rake
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
# Installs a rake task to generate API documentation using yard.
|
2
|
-
#
|
3
|
-
# This file installs the 'rake yard' task. It is automatically generated by Noe from
|
4
|
-
# your .noespec file, and should therefore be configured there, under the
|
5
|
-
# variables/rake_tasks/yard entry, as illustrated below:
|
6
|
-
#
|
7
|
-
# variables:
|
8
|
-
# rake_tasks:
|
9
|
-
# yard:
|
10
|
-
# files: lib/**/*.rb
|
11
|
-
# options: []
|
12
|
-
# ...
|
13
|
-
#
|
14
|
-
# If you have specific needs requiring manual intervention on this file,
|
15
|
-
# don't forget to set safe-override to false in your noe specification:
|
16
|
-
#
|
17
|
-
# template-info:
|
18
|
-
# manifest:
|
19
|
-
# tasks/yard.rake:
|
20
|
-
# safe-override: false
|
21
|
-
#
|
22
|
-
# This file has been written to conform to yard v0.6.4. More information about
|
23
|
-
# yard and the rake task installed below can be found on http://yardoc.org/
|
24
|
-
#
|
25
|
-
begin
|
26
|
-
require "yard"
|
27
|
-
desc "Generate yard documentation"
|
28
|
-
YARD::Rake::YardocTask.new(:yard) do |t|
|
29
|
-
# Array of options passed to yardoc commandline. See 'yardoc --help' about this
|
30
|
-
t.options = ["--output-dir", "doc/api", "-", "README.md", "CHANGELOG.md", "LICENCE.md"]
|
31
|
-
|
32
|
-
# Array of ruby source files (and any extra documentation files
|
33
|
-
# separated by '-')
|
34
|
-
t.files = ["lib/**/*.rb"]
|
35
|
-
|
36
|
-
# A proc to call before running the task
|
37
|
-
# t.before = proc{ }
|
38
|
-
|
39
|
-
# A proc to call after running the task
|
40
|
-
# r.after = proc{ }
|
41
|
-
|
42
|
-
# An optional lambda to run against all objects being generated.
|
43
|
-
# Any object that the lambda returns false for will be excluded
|
44
|
-
# from documentation.
|
45
|
-
# t.verifier = lambda{|obj| true}
|
46
|
-
end
|
47
|
-
rescue LoadError
|
48
|
-
task :yard do
|
49
|
-
abort 'yard is not available. In order to run yard, you must: gem install yard'
|
50
|
-
end
|
51
|
-
end
|