lexer_kit 0.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d5d0fb5858284e39c520249e03328cf6d6b7b76abea6a68cd5a108482f9559d
4
- data.tar.gz: 91c71a842ebd3789c790889093d2e20dbffdccbbac37b426edaed75cd0a6e6be
3
+ metadata.gz: 53bbd276328d79addc7354b327f2512df14ea7e42b8eb2489918b27a9002a845
4
+ data.tar.gz: 07e3fccbe193dd33ef2b88b96e0c072bc73bd9401ab71e92af6b6d1d420abae8
5
5
  SHA512:
6
- metadata.gz: 3eff7c3bf53f36b7f86fc1ccd46af47a4d5d72a7b233fdb19c70e850d0d9a12f2b9f681f103ccef2002516cdadbb55271a445d99f7a38152ec242f692d8ca154
7
- data.tar.gz: e5473a353ebb29405ce56acf5c469d425cb6cc463f1f06a0a07062baa92696c26757f198fa8c6d0b61f861e9895dd4511715d08106e3df122b8f2cd1d9367adf
6
+ metadata.gz: 03c78df968d9aecdb63df4bbe3b0582f885acded308f7c7ad10bb60fa72752f98c69c610d027d3332c5786be560736d75396275ed3d9e8b409d0120308332b50
7
+ data.tar.gz: 03d72fc5cecc9f7ce73feafbf97a923883e69e44030ebb3a65fce14eb2e68a8f30345ea7c511e497fbfdf4936015129965644ac6b1f3a8ce8073cc7238d6b5cc
@@ -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.select { |k| k.is_a?(Integer) }
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}"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LexerKit
4
- VERSION = "0.6.0"
4
+ VERSION = "0.6.1"
5
5
  end
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
- require "lexer_kit_rust/lexer_kit_rust"
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.6.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: 1980-01-02 00:00:00.000000000 Z
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.9
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: []