oedipus_lex 2.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
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +1 -0
- data/.autotest +26 -0
- data/.gemtest +0 -0
- data/History.rdoc +6 -0
- data/Manifest.txt +27 -0
- data/README.rdoc +468 -0
- data/Rakefile +72 -0
- data/lib/oedipus_lex.rake +16 -0
- data/lib/oedipus_lex.rb +274 -0
- data/lib/oedipus_lex.rex +51 -0
- data/lib/oedipus_lex.rex.rb +144 -0
- data/rex-mode.el +58 -0
- data/sample/calc3.racc +54 -0
- data/sample/calc3.rex +15 -0
- data/sample/error1.rex +15 -0
- data/sample/error1.txt +2 -0
- data/sample/error2.rex +15 -0
- data/sample/sample.html +32 -0
- data/sample/sample.rex +15 -0
- data/sample/sample.xhtml +32 -0
- data/sample/sample1.c +9 -0
- data/sample/sample1.rex +43 -0
- data/sample/sample2.bas +4 -0
- data/sample/sample2.rex +30 -0
- data/sample/xhtmlparser.html +7 -0
- data/sample/xhtmlparser.racc +66 -0
- data/sample/xhtmlparser.rex +70 -0
- data/sample/xhtmlparser.xhtml +10 -0
- data/test/test_oedipus_lex.rb +629 -0
- metadata +164 -0
- metadata.gz.sig +0 -0
metadata
ADDED
@@ -0,0 +1,164 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: oedipus_lex
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Ryan Davis
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDPjCCAiagAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMRMwEQYDVQQDDApyeWFu
|
14
|
+
ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
|
15
|
+
GRYDY29tMB4XDTEzMDkxNjIzMDQxMloXDTE0MDkxNjIzMDQxMlowRTETMBEGA1UE
|
16
|
+
AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
|
17
|
+
JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
|
18
|
+
b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
|
19
|
+
taCPaLmfYIaFcHHCSY4hYDJijRQkLxPeB3xbOfzfLoBDbjvx5JxgJxUjmGa7xhcT
|
20
|
+
oOvjtt5P8+GSK9zLzxQP0gVLS/D0FmoE44XuDr3iQkVS2ujU5zZL84mMNqNB1znh
|
21
|
+
GiadM9GHRaDiaxuX0cIUBj19T01mVE2iymf9I6bEsiayK/n6QujtyCbTWsAS9Rqt
|
22
|
+
qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
|
23
|
+
gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
24
|
+
HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBBQUAA4IB
|
25
|
+
AQCFZ7JTzoy1gcG4d8A6dmOJy7ygtO5MFpRIz8HuKCF5566nOvpy7aHhDDzFmQuu
|
26
|
+
FX3zDU6ghx5cQIueDhf2SGOncyBmmJRRYawm3wI0o1MeN6LZJ/3cRaOTjSFy6+S6
|
27
|
+
zqDmHBp8fVA2TGJtO0BLNkbGVrBJjh0UPmSoGzWlRhEVnYC33TpDAbNA+u39UrQI
|
28
|
+
ynwhNN7YbnmSR7+JU2cUjBFv2iPBO+TGuWC+9L2zn3NHjuc6tnmSYipA9y8Hv+As
|
29
|
+
Y4evBVezr3SjXz08vPqRO5YRdO3zfeMT8gBjRqZjWJGMZ2lD4XNfrs7eky74CyZw
|
30
|
+
xx3n58i0lQkBE1EpKE0lFu/y
|
31
|
+
-----END CERTIFICATE-----
|
32
|
+
date: 2013-12-14 00:00:00.000000000 Z
|
33
|
+
dependencies:
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: minitest
|
36
|
+
requirement: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '5.2'
|
41
|
+
type: :development
|
42
|
+
prerelease: false
|
43
|
+
version_requirements: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '5.2'
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: rdoc
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '4.0'
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '4.0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: hoe
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.7'
|
69
|
+
type: :development
|
70
|
+
prerelease: false
|
71
|
+
version_requirements: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '3.7'
|
76
|
+
description: |-
|
77
|
+
Oedipus Lex is a lexer generator in the same family as Rexical and
|
78
|
+
Rex. Oedipus Lex is my independent lexer fork of Rexical. Rexical was
|
79
|
+
in turn a fork of Rex. We've been unable to contact the author of rex
|
80
|
+
in order to take it over, fix it up, extend it, and relicense it to
|
81
|
+
MIT. So, Oedipus was written clean-room in order to bypass licensing
|
82
|
+
constraints (and because bootstrapping is fun).
|
83
|
+
|
84
|
+
Oedipus brings a lot of extras to the table and at this point is only
|
85
|
+
historically related to rexical. The syntax has changed enough that
|
86
|
+
any rexical lexer will have to be tweaked to work inside of oedipus.
|
87
|
+
At the very least, you need to add slashes to all your regexps.
|
88
|
+
|
89
|
+
Oedipus, like rexical, is based primarily on generating code much like
|
90
|
+
you would a hand-written lexer. It is _not_ a table or hash driven
|
91
|
+
lexer. It use StrScanner within a multi-level case statement. As such,
|
92
|
+
Oedipus matches on the _first_ match, not the longest (like lex and
|
93
|
+
its ilk).
|
94
|
+
|
95
|
+
This documentation is not meant to bypass any prerequisite knowledge
|
96
|
+
on lexing or parsing. If you'd like to study the subject in further
|
97
|
+
detail, please try [TIN321] or the [LLVM Tutorial] or some other good
|
98
|
+
resource for CS learning. Books... books are good. I like books.
|
99
|
+
email:
|
100
|
+
- ryand-ruby@zenspider.com
|
101
|
+
executables: []
|
102
|
+
extensions: []
|
103
|
+
extra_rdoc_files:
|
104
|
+
- History.rdoc
|
105
|
+
- Manifest.txt
|
106
|
+
- README.rdoc
|
107
|
+
- sample/error1.txt
|
108
|
+
files:
|
109
|
+
- .autotest
|
110
|
+
- History.rdoc
|
111
|
+
- Manifest.txt
|
112
|
+
- README.rdoc
|
113
|
+
- Rakefile
|
114
|
+
- lib/oedipus_lex.rake
|
115
|
+
- lib/oedipus_lex.rb
|
116
|
+
- lib/oedipus_lex.rex
|
117
|
+
- lib/oedipus_lex.rex.rb
|
118
|
+
- rex-mode.el
|
119
|
+
- sample/calc3.racc
|
120
|
+
- sample/calc3.rex
|
121
|
+
- sample/error1.rex
|
122
|
+
- sample/error1.txt
|
123
|
+
- sample/error2.rex
|
124
|
+
- sample/sample.html
|
125
|
+
- sample/sample.rex
|
126
|
+
- sample/sample.xhtml
|
127
|
+
- sample/sample1.c
|
128
|
+
- sample/sample1.rex
|
129
|
+
- sample/sample2.bas
|
130
|
+
- sample/sample2.rex
|
131
|
+
- sample/xhtmlparser.html
|
132
|
+
- sample/xhtmlparser.racc
|
133
|
+
- sample/xhtmlparser.rex
|
134
|
+
- sample/xhtmlparser.xhtml
|
135
|
+
- test/test_oedipus_lex.rb
|
136
|
+
- .gemtest
|
137
|
+
homepage: http://github.com/seattlerb/oedipus_lex
|
138
|
+
licenses:
|
139
|
+
- MIT
|
140
|
+
metadata: {}
|
141
|
+
post_install_message:
|
142
|
+
rdoc_options:
|
143
|
+
- --main
|
144
|
+
- README.rdoc
|
145
|
+
require_paths:
|
146
|
+
- lib
|
147
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - '>='
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
153
|
+
requirements:
|
154
|
+
- - '>='
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: '0'
|
157
|
+
requirements: []
|
158
|
+
rubyforge_project: oedipus_lex
|
159
|
+
rubygems_version: 2.1.10
|
160
|
+
signing_key:
|
161
|
+
specification_version: 4
|
162
|
+
summary: Oedipus Lex is a lexer generator in the same family as Rexical and Rex
|
163
|
+
test_files:
|
164
|
+
- test/test_oedipus_lex.rb
|
metadata.gz.sig
ADDED
Binary file
|