lex 0.1.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/.gitignore +14 -0
- data/.rspec +3 -0
- data/.ruby-version +1 -0
- data/.travis.yml +22 -0
- data/Gemfile +19 -0
- data/LICENSE.txt +22 -0
- data/README.md +423 -0
- data/Rakefile +8 -0
- data/lex.gemspec +22 -0
- data/lib/lex.rb +22 -0
- data/lib/lex/lexeme.rb +27 -0
- data/lib/lex/lexer.rb +210 -0
- data/lib/lex/lexer/dsl.rb +49 -0
- data/lib/lex/lexer/rule_dsl.rb +165 -0
- data/lib/lex/lexers.rb +11 -0
- data/lib/lex/lexers/html.rb +8 -0
- data/lib/lex/linter.rb +114 -0
- data/lib/lex/logger.rb +21 -0
- data/lib/lex/source_line.rb +13 -0
- data/lib/lex/state.rb +37 -0
- data/lib/lex/token.rb +47 -0
- data/lib/lex/version.rb +5 -0
- data/spec/spec_helper.rb +50 -0
- data/spec/unit/error_spec.rb +42 -0
- data/spec/unit/keyword_spec.rb +34 -0
- data/spec/unit/lex_spec.rb +60 -0
- data/spec/unit/position_spec.rb +94 -0
- data/spec/unit/rule_spec.rb +63 -0
- data/spec/unit/state/clone_spec.rb +15 -0
- data/spec/unit/states_spec.rb +194 -0
- data/spec/unit/tokens_spec.rb +32 -0
- data/tasks/console.rake +10 -0
- data/tasks/coverage.rake +11 -0
- data/tasks/spec.rake +29 -0
- metadata +104 -0
metadata
ADDED
@@ -0,0 +1,104 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: lex
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Piotr Murach
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-04-26 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.6'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.6'
|
27
|
+
description: Lex is an implementation of compiler construction tool lex in Ruby. The
|
28
|
+
goal is to stay close to the way the original tool works and combine it with the
|
29
|
+
expressivness or Ruby.
|
30
|
+
email:
|
31
|
+
- ''
|
32
|
+
executables: []
|
33
|
+
extensions: []
|
34
|
+
extra_rdoc_files: []
|
35
|
+
files:
|
36
|
+
- .gitignore
|
37
|
+
- .rspec
|
38
|
+
- .ruby-version
|
39
|
+
- .travis.yml
|
40
|
+
- Gemfile
|
41
|
+
- LICENSE.txt
|
42
|
+
- README.md
|
43
|
+
- Rakefile
|
44
|
+
- lex.gemspec
|
45
|
+
- lib/lex.rb
|
46
|
+
- lib/lex/lexeme.rb
|
47
|
+
- lib/lex/lexer.rb
|
48
|
+
- lib/lex/lexer/dsl.rb
|
49
|
+
- lib/lex/lexer/rule_dsl.rb
|
50
|
+
- lib/lex/lexers.rb
|
51
|
+
- lib/lex/lexers/html.rb
|
52
|
+
- lib/lex/linter.rb
|
53
|
+
- lib/lex/logger.rb
|
54
|
+
- lib/lex/source_line.rb
|
55
|
+
- lib/lex/state.rb
|
56
|
+
- lib/lex/token.rb
|
57
|
+
- lib/lex/version.rb
|
58
|
+
- spec/spec_helper.rb
|
59
|
+
- spec/unit/error_spec.rb
|
60
|
+
- spec/unit/keyword_spec.rb
|
61
|
+
- spec/unit/lex_spec.rb
|
62
|
+
- spec/unit/position_spec.rb
|
63
|
+
- spec/unit/rule_spec.rb
|
64
|
+
- spec/unit/state/clone_spec.rb
|
65
|
+
- spec/unit/states_spec.rb
|
66
|
+
- spec/unit/tokens_spec.rb
|
67
|
+
- tasks/console.rake
|
68
|
+
- tasks/coverage.rake
|
69
|
+
- tasks/spec.rake
|
70
|
+
homepage: ''
|
71
|
+
licenses:
|
72
|
+
- MIT
|
73
|
+
metadata: {}
|
74
|
+
post_install_message:
|
75
|
+
rdoc_options: []
|
76
|
+
require_paths:
|
77
|
+
- lib
|
78
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
requirements: []
|
89
|
+
rubyforge_project:
|
90
|
+
rubygems_version: 2.0.3
|
91
|
+
signing_key:
|
92
|
+
specification_version: 4
|
93
|
+
summary: Lex is an implementation of complier constuction tool lex in Ruby.
|
94
|
+
test_files:
|
95
|
+
- spec/spec_helper.rb
|
96
|
+
- spec/unit/error_spec.rb
|
97
|
+
- spec/unit/keyword_spec.rb
|
98
|
+
- spec/unit/lex_spec.rb
|
99
|
+
- spec/unit/position_spec.rb
|
100
|
+
- spec/unit/rule_spec.rb
|
101
|
+
- spec/unit/state/clone_spec.rb
|
102
|
+
- spec/unit/states_spec.rb
|
103
|
+
- spec/unit/tokens_spec.rb
|
104
|
+
has_rdoc:
|