expressir 2.1.17 → 2.1.18

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: 277a743bb27aa72bee152d4c503292790212510a8d8b9d6fbd05b195408a5f8c
4
- data.tar.gz: 97b97c970b4a965aeed7ee237b5fcebeda4f26e7d86b163c02b692affbd76082
3
+ metadata.gz: d20d882f0b9e6b30860d41294671b6c235cff0cc024521276ca9ca3283e1f79a
4
+ data.tar.gz: 8625cc4fa425c9d02c73e056b8ee9ee8aa69eaab566452b44e1a1ae137faacf6
5
5
  SHA512:
6
- metadata.gz: 4ae77121b551d8105486602383ee9b3b0596dd83ad3890b2c799182a9e6947488466a9a453205eb5b3791597e00a66f6754cd56946e5025c27f6a845eb756276
7
- data.tar.gz: 8f611d2ce48adc92acee4eaa9af7b048baf92dfef08a265780e93f98d3b273a271b97a0f13b7492bb977075e98a863590f391c407a7a1ad1a707a3b24c40d24e
6
+ metadata.gz: 88dc6630b82e7b7c01f49df868664caa34d54e5d21d2af4d786094f7c880b7f39bbd7295f084e1e3558f9705a7798364740dfdc40086241b7d20e36419ae75b9
7
+ data.tar.gz: 0f87bcc8eda3e6b321202f64b9bcfc5a357c8b3ee4c1f0dc481a7610e9680f2af50a0b257838809d05888fda647f28be9583e1debfac557fa31c78b1b2c66fb2
data/expressir.gemspec CHANGED
@@ -33,6 +33,7 @@ Gem::Specification.new do |spec|
33
33
 
34
34
  spec.test_files = `git ls-files -- {spec}/*`.split("\n")
35
35
 
36
+ spec.add_dependency "base64"
36
37
  spec.add_dependency "benchmark-ips"
37
38
  spec.add_dependency "csv"
38
39
  spec.add_dependency "liquid"
@@ -67,7 +67,7 @@ module Expressir
67
67
  end
68
68
  rule(:aliasStmt) do
69
69
  (tALIAS >> variableId >> tFOR >> generalRef >> qualifier.repeat.as(:qualifier) >>
70
- op_delim >> stmt.repeat(1).as(:stmt) >> tEND_ALIAS >> (op_delim.as(:op_delim2))).as(:aliasStmt)
70
+ op_delim >> stmt.repeat(1).as(:stmt) >> tEND_ALIAS >> op_delim.as(:op_delim2)).as(:aliasStmt)
71
71
  end
72
72
  rule(:anyKeyword) { KEYWORDS.map { |kw| send("t#{kw}") }.inject(:|) }
73
73
  rule(:arrayType) do
@@ -116,7 +116,7 @@ module Expressir
116
116
  rule(:element) { (expression >> (op_colon >> repetition).maybe).as(:element) }
117
117
  rule(:embeddedRemark) { (str("(*") >> (str("*)").absent? >> (embeddedRemark | any)).repeat >> str("*)")).as(:embeddedRemark) }
118
118
  rule(:encodedCharacter) { (octet >> octet >> octet >> octet) }
119
- rule(:encodedStringLiteral) { cts((str('"') >> (encodedCharacter.repeat(1)) >> str('"')).as(:str)).as(:encodedStringLiteral) }
119
+ rule(:encodedStringLiteral) { cts((str('"') >> encodedCharacter.repeat(1) >> str('"')).as(:str)).as(:encodedStringLiteral) }
120
120
  rule(:entityBody) do
121
121
  (explicitAttr.repeat.as(:explicitAttr) >> deriveClause.maybe >> inverseClause.maybe >> uniqueClause.maybe >> whereClause.maybe).as(:entityBody)
122
122
  end
@@ -149,7 +149,7 @@ module Expressir
149
149
  rule(:functionHead) do
150
150
  (tFUNCTION >> functionId >>
151
151
  (op_leftparen >> (formalParameter >> (op_delim >> formalParameter).repeat).as(:listOf_formalParameter) >> op_rightparen).maybe >>
152
- op_colon >> parameterType >> (op_delim.as(:op_delim2))).as(:functionHead)
152
+ op_colon >> parameterType >> op_delim.as(:op_delim2)).as(:functionHead)
153
153
  end
154
154
  rule(:functionId) { simpleId.as(:functionId) }
155
155
  rule(:functionRef) { functionId.as(:functionRef) }
@@ -181,7 +181,7 @@ module Expressir
181
181
  rule(:intervalItem) { simpleExpression.as(:intervalItem) }
182
182
  rule(:intervalLow) { simpleExpression.as(:intervalLow) }
183
183
  rule(:interval) do
184
- (op_left_curly_brace >> intervalLow >> intervalOp >> intervalItem >> (intervalOp.as(:intervalOp2)) >>
184
+ (op_left_curly_brace >> intervalLow >> intervalOp >> intervalItem >> intervalOp.as(:intervalOp2) >>
185
185
  intervalHigh >> op_right_curly_brace).as(:interval)
186
186
  end
187
187
  rule(:intervalOp) { (op_less_equal | op_less_than).as(:intervalOp) }
@@ -256,7 +256,7 @@ module Expressir
256
256
  rule(:procedureHead) do
257
257
  (tPROCEDURE >> procedureId >>
258
258
  (op_leftparen >> (procedureHeadParameter >>
259
- (op_delim >> procedureHeadParameter).repeat).as(:listOf_procedureHeadParameter) >> op_rightparen).maybe >> (op_delim.as(:op_delim2))).as(:procedureHead)
259
+ (op_delim >> procedureHeadParameter).repeat).as(:listOf_procedureHeadParameter) >> op_rightparen).maybe >> op_delim.as(:op_delim2)).as(:procedureHead)
260
260
  end
261
261
  rule(:procedureId) { simpleId.as(:procedureId) }
262
262
  rule(:procedureRef) { procedureId.as(:procedureRef) }
@@ -281,7 +281,7 @@ module Expressir
281
281
  end
282
282
  rule(:renameId) { (constantId | entityId | functionId | procedureId | typeId).as(:renameId) }
283
283
  rule(:repeatControl) { (incrementControl.maybe >> whileControl.maybe >> untilControl.maybe).as(:repeatControl) }
284
- rule(:repeatStmt) { (tREPEAT >> repeatControl >> op_delim >> stmt.repeat(1).as(:stmt) >> tEND_REPEAT >> (op_delim.as(:op_delim2))).as(:repeatStmt) }
284
+ rule(:repeatStmt) { (tREPEAT >> repeatControl >> op_delim >> stmt.repeat(1).as(:stmt) >> tEND_REPEAT >> op_delim.as(:op_delim2)).as(:repeatStmt) }
285
285
  rule(:repetition) { numericExpression.as(:repetition) }
286
286
  rule(:resourceOrRename) { (resourceRef >> (tAS >> renameId).maybe).as(:resourceOrRename) }
287
287
  rule(:resourceRef) { (constantRef | entityRef | functionRef | procedureRef | typeRef).as(:resourceRef) }
@@ -301,7 +301,7 @@ module Expressir
301
301
  schemaBodyDeclaration.repeat.as(:schemaBodyDeclaration)).as(:schemaBody)
302
302
  end
303
303
  rule(:schemaDecl) do
304
- (tSCHEMA >> schemaId >> schemaVersionId.maybe >> op_delim >> schemaBody >> tEND_SCHEMA >> (op_delim.as(:op_delim2))).as(:schemaDecl)
304
+ (tSCHEMA >> schemaId >> schemaVersionId.maybe >> op_delim >> schemaBody >> tEND_SCHEMA >> op_delim.as(:op_delim2)).as(:schemaDecl)
305
305
  end
306
306
  rule(:schemaId) { simpleId.as(:schemaId) }
307
307
  rule(:schemaRef) { schemaId.as(:schemaRef) }
@@ -353,7 +353,7 @@ module Expressir
353
353
  (tTOTAL_OVER >> op_leftparen >> (entityRef >> (op_comma >> entityRef).repeat).as(:listOf_entityRef) >> op_rightparen >> op_delim).as(:totalOver)
354
354
  end
355
355
  rule(:typeDecl) do
356
- (tTYPE >> typeId >> op_equals >> underlyingType >> op_delim >> whereClause.maybe >> tEND_TYPE >> (op_delim.as(:op_delim2))).as(:typeDecl)
356
+ (tTYPE >> typeId >> op_equals >> underlyingType >> op_delim >> whereClause.maybe >> tEND_TYPE >> op_delim.as(:op_delim2)).as(:typeDecl)
357
357
  end
358
358
  rule(:typeId) { simpleId.as(:typeId) }
359
359
  rule(:typeLabelId) { simpleId.as(:typeLabelId) }
@@ -363,7 +363,7 @@ module Expressir
363
363
  rule(:unaryOp) { (op_plus | op_minus | tNOT).as(:unaryOp) }
364
364
  rule(:underlyingType) { (concreteTypes | constructedTypes).as(:underlyingType) }
365
365
  rule(:uniqueClause) do
366
- (tUNIQUE >> (uniqueRule >> op_delim >> (uniqueRule >> (op_delim.as(:op_delim2))).repeat).as(:listOf_uniqueRule)).as(:uniqueClause)
366
+ (tUNIQUE >> (uniqueRule >> op_delim >> (uniqueRule >> op_delim.as(:op_delim2)).repeat).as(:listOf_uniqueRule)).as(:uniqueClause)
367
367
  end
368
368
  rule(:uniqueRule) do
369
369
  ((ruleLabelId >> op_colon).maybe >> (referencedAttribute >> (op_comma >> referencedAttribute).repeat).as(:listOf_referencedAttribute)).as(:uniqueRule)
@@ -88,7 +88,7 @@ module Expressir
88
88
  private_methods.grep(/^visit_/).map do |name|
89
89
  rulename = name.to_s.sub(/^visit_/, "").gsub(/_([a-z])/) { $1.upcase }
90
90
  [rulename.to_sym, name.to_sym]
91
- end
91
+ end,
92
92
  ]
93
93
  end
94
94
 
@@ -104,7 +104,7 @@ module Expressir
104
104
  else
105
105
  [k, to_ctx(v, k)]
106
106
  end
107
- end
107
+ end,
108
108
  ]
109
109
  Ctx.new nodes, name
110
110
  when Array
@@ -1,3 +1,3 @@
1
1
  module Expressir
2
- VERSION = "2.1.17".freeze
2
+ VERSION = "2.1.18".freeze
3
3
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: expressir
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.17
4
+ version: 2.1.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-03-24 00:00:00.000000000 Z
11
+ date: 2025-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: base64
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: benchmark-ips
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -145,7 +159,6 @@ files:
145
159
  - lib/expressir/config.rb
146
160
  - lib/expressir/express/cache.rb
147
161
  - lib/expressir/express/error.rb
148
- - lib/expressir/express/express_remarks_decorator.rb
149
162
  - lib/expressir/express/formatter.rb
150
163
  - lib/expressir/express/hyperlink_formatter.rb
151
164
  - lib/expressir/express/model_visitor.rb
@@ -1,54 +0,0 @@
1
- module Expressir
2
- module Express
3
- class ExpressRemarksDecorator
4
- RELATIVE_PREFIX_MACRO_REGEXP = /^(link|image|video|audio|include)(:+)?(?![^\/:]+:\/\/|[A-Z]:\/|\/)([^:\[]+)(\[.*\])?$/.freeze
5
-
6
- attr_reader :remark, :options
7
-
8
- def self.call(remark, options)
9
- new(remark, options).call
10
- end
11
-
12
- def initialize(remark, options)
13
- @remark = remark
14
- @options = options
15
- end
16
-
17
- def call
18
- result = remark
19
- if options["relative_path_prefix"]
20
- result = update_relative_paths(result,
21
- options["relative_path_prefix"])
22
- end
23
- result
24
- end
25
-
26
- private
27
-
28
- def update_relative_paths(string, path_prefix)
29
- string
30
- .split("\n")
31
- .map do |line|
32
- if line.match?(RELATIVE_PREFIX_MACRO_REGEXP)
33
- prefix_relative_paths(line, path_prefix)
34
- else
35
- line
36
- end
37
- end
38
- .join("\n")
39
- end
40
-
41
- def prefix_relative_paths(line, path_prefix)
42
- line.gsub(RELATIVE_PREFIX_MACRO_REGEXP) do |_match|
43
- prefixed_path = File.join(path_prefix, $3.strip)
44
- # When we are dealing with a relative path of a template:
45
- # ../path/to/file we need to transform it into
46
- # the absolute one because `image::` macro wont understand it other way
47
- prefixed_path = File.absolute_path(prefixed_path) if prefixed_path.start_with?("../")
48
- full_path = File.expand_path(prefixed_path)
49
- "#{$1}#{$2}#{full_path}#{$4}"
50
- end
51
- end
52
- end
53
- end
54
- end