lexer_kit 0.5.0 → 0.6.1
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 +4 -4
- data/lib/lexer_kit/trie.rb +1 -1
- data/lib/lexer_kit/version.rb +1 -1
- data/lib/lexer_kit.rb +6 -1
- metadata +17 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 53bbd276328d79addc7354b327f2512df14ea7e42b8eb2489918b27a9002a845
|
|
4
|
+
data.tar.gz: 07e3fccbe193dd33ef2b88b96e0c072bc73bd9401ab71e92af6b6d1d420abae8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 03c78df968d9aecdb63df4bbe3b0582f885acded308f7c7ad10bb60fa72752f98c69c610d027d3332c5786be560736d75396275ed3d9e8b409d0120308332b50
|
|
7
|
+
data.tar.gz: 03d72fc5cecc9f7ce73feafbf97a923883e69e44030ebb3a65fce14eb2e68a8f30345ea7c511e497fbfdf4936015129965644ac6b1f3a8ce8073cc7238d6b5cc
|
data/lib/lexer_kit/trie.rb
CHANGED
|
@@ -161,7 +161,7 @@ module LexerKit
|
|
|
161
161
|
return if labels.empty?
|
|
162
162
|
|
|
163
163
|
# Check for Integer keys (ambiguous with direct offsets)
|
|
164
|
-
integer_keys = labels.keys.
|
|
164
|
+
integer_keys = labels.keys.grep(Integer)
|
|
165
165
|
return if integer_keys.empty?
|
|
166
166
|
|
|
167
167
|
raise ArgumentError, "labels must have Symbol keys only (Integer keys are ambiguous), found Integer keys: #{integer_keys.inspect}"
|
data/lib/lexer_kit/version.rb
CHANGED
data/lib/lexer_kit.rb
CHANGED
|
@@ -13,7 +13,12 @@ require_relative "lexer_kit/trie"
|
|
|
13
13
|
|
|
14
14
|
# Try to load Rust extension
|
|
15
15
|
begin
|
|
16
|
-
|
|
16
|
+
begin
|
|
17
|
+
# Precompiled gems ship one binary per Ruby minor version
|
|
18
|
+
require "lexer_kit_rust/#{RUBY_VERSION[/\d+\.\d+/]}/lexer_kit_rust"
|
|
19
|
+
rescue LoadError
|
|
20
|
+
require "lexer_kit_rust/lexer_kit_rust"
|
|
21
|
+
end
|
|
17
22
|
LEXER_KIT_NATIVE = true
|
|
18
23
|
|
|
19
24
|
# Runner wraps LexStream (defined in Rust) with high-level methods
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lexer_kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.6.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- takahashim
|
|
8
8
|
bindir: exe
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date:
|
|
10
|
+
date: 2026-06-10 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: base64
|
|
@@ -23,6 +23,20 @@ dependencies:
|
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: '0'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: rb_sys
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '0'
|
|
33
|
+
type: :runtime
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - ">="
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '0'
|
|
26
40
|
description: LexerKit is a high performance lexer toolkit for Ruby
|
|
27
41
|
email:
|
|
28
42
|
- takahashimm@gmail.com
|
|
@@ -113,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
113
127
|
- !ruby/object:Gem::Version
|
|
114
128
|
version: '0'
|
|
115
129
|
requirements: []
|
|
116
|
-
rubygems_version: 3.6.
|
|
130
|
+
rubygems_version: 3.6.2
|
|
117
131
|
specification_version: 4
|
|
118
132
|
summary: A high-performance lexer toolkit for Ruby
|
|
119
133
|
test_files: []
|