ruby_grammar_builder 0.0.3 → 0.1.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: 2ef6fdbdbdefa596e319c8978ed05a1ff64bdc0ed52c5dc23f4df87776dc0c6a
4
- data.tar.gz: 5889342d7edd9ac7de06dee43e23c4ea510349ce9c8280f8577032b862571337
3
+ metadata.gz: 165617e414c7f28e08f947551dfe0bc9db0ede21b1d82061252daf6676b624d8
4
+ data.tar.gz: aa6e6981ed7073a682ca8f32a64279748de5565b8930c6c31f5f109eb4f0d7f4
5
5
  SHA512:
6
- metadata.gz: 9d1320c5a0b032c16b8acaf691f4a0155e82f05481c5a4b7c66e9d4a536fd60494a837eacb19d96681c1479add5f4109e51dfba5b4c050540838c6b4b1e28614
7
- data.tar.gz: 358646b9e97557a464f4bd5286bafbadd85aff83ab798408fde64d2dab4744051690e47ef6f638a79714dabd17f2b100581f3d0d550abd65922c0ae714e18cef
6
+ metadata.gz: 71c214d3b6fdaa047800ac81020dec90934ef7700ac59f137f558e49acddd7ddcbdf52bd50fcc7fda67fcb4aadeb931d42fdbb11daf42a6abe1bbd6085b002ae
7
+ data.tar.gz: f34c8868265b4396b8dabd5caad64bd0a1209e99c92516a5fd4148d32acbfeb67f7e48ee96c6564116e47e0fecb89ae9d3b8f64696be6f14641aef9736a15856
@@ -21,6 +21,7 @@ class Grammar
21
21
  attr_accessor :repository
22
22
  attr_accessor :name
23
23
  attr_accessor :scope_name
24
+ attr_accessor :ending
24
25
 
25
26
  #
26
27
  # Create a new Exportable Grammar (Grammar Partial)
@@ -125,6 +126,7 @@ class Grammar
125
126
  @name = keys[:name]
126
127
  @scope_name = keys[:scope_name]
127
128
  @repository = {}
129
+ @ending = keys[:ending] || @scope_name.split('.').drop(1).join('.')
128
130
 
129
131
  keys.delete :name
130
132
  keys.delete :scope_name
@@ -458,13 +460,13 @@ class Grammar
458
460
  inherit_or_embedded: :embedded,
459
461
  generate_tags: true,
460
462
  syntax_format: :json,
461
- syntax_name: "#{@scope_name.split('.').drop(1).join('.')}",
463
+ syntax_name: "#{@ending}",
462
464
  syntax_dir: options[:directory],
463
- tag_name: "#{@scope_name.split('.').drop(1).join('.')}_scopes.txt",
464
465
  tag_dir: options[:directory],
465
466
  should_lint: true,
466
467
  }
467
468
  options = default.merge(options)
469
+ options[:tag_name] ||= options[:syntax_name] + "_scopes.txt"
468
470
 
469
471
  output = generate(options)
470
472
 
@@ -11,7 +11,7 @@ class AddEnding < GrammarTransform
11
11
  return pattern.map { |v| pre_transform(v, options) } if pattern.is_a? Array
12
12
  return pattern unless pattern.is_a? PatternBase
13
13
 
14
- ending = options[:grammar].scope_name.split(".")[-1]
14
+ ending = options[:grammar].ending
15
15
  pattern.transform_tag_as do |tag_as|
16
16
  tag_as.split(" ").map do |tag|
17
17
  next tag if tag.end_with?(ending)
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+ require 'set'
2
3
 
3
4
  #
4
5
  # Disables warnings for the block
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_grammar_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Hykin
@@ -9,8 +9,28 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-09-16 00:00:00.000000000 Z
13
- dependencies: []
12
+ date: 2021-09-16 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: deep_clone
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: 0.0.1
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.1
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - "~>"
29
+ - !ruby/object:Gem::Version
30
+ version: 0.0.1
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.0.1
14
34
  description:
15
35
  email:
16
36
  executables: []