ridl 2.8.0 → 2.8.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/ridl/backend.rb +1 -1
- data/lib/ridl/delegate.rb +6 -6
- data/lib/ridl/expression.rb +13 -13
- data/lib/ridl/genfile.rb +2 -2
- data/lib/ridl/node.rb +24 -24
- data/lib/ridl/options.rb +1 -1
- data/lib/ridl/optparse_ext.rb +1 -1
- data/lib/ridl/runner.rb +9 -9
- data/lib/ridl/scanner.rb +19 -19
- data/lib/ridl/type.rb +1 -1
- data/lib/ridl/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d24bac3b0aa52e6c84a1ef61d0939d84b3277b139a69db8cfc1f7f95130bf6a2
|
4
|
+
data.tar.gz: 3f773ed9d639811aaba53a68e0ace506b5e6b11591875326665d102faeff5a8f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1aa10dbfdb821544c474bc3f41bf48c156a42bf51d909ed631c6030ebd546145f9f9e70945bf4aa54a68e74cfe4a4d27b38dfab937e1576338febc67ea18dc8c
|
7
|
+
data.tar.gz: b96af7bb90418102bfb030dbd798bd15384232ab2547887fd68d4a3e1dc4142c0d997ab15f4de93daf06f39e764d8d8d04720774e81031b537b343daf6570862
|
data/lib/ridl/backend.rb
CHANGED
@@ -50,7 +50,7 @@ module IDL
|
|
50
50
|
rescue LoadError => ex
|
51
51
|
IDL.error "ERROR: Cannot load RIDL backend [:#{be_name}]"
|
52
52
|
IDL.error ex.inspect
|
53
|
-
IDL.error(ex.backtrace.join("\n")) if IDL.verbose_level>0
|
53
|
+
IDL.error(ex.backtrace.join("\n")) if IDL.verbose_level > 0
|
54
54
|
exit 1
|
55
55
|
end
|
56
56
|
end
|
data/lib/ridl/delegate.rb
CHANGED
@@ -213,7 +213,7 @@ class Delegator
|
|
213
213
|
params = { :filename => s, :fullpath => fullpath }
|
214
214
|
params[:defined] = true
|
215
215
|
params[:preprocessed] = @preprocess
|
216
|
-
@cur = @cur.define(IDL::AST::Include, "$INC:"+s, params)
|
216
|
+
@cur = @cur.define(IDL::AST::Include, "$INC:" + s, params)
|
217
217
|
@includes[s] = @cur
|
218
218
|
set_last
|
219
219
|
@cur
|
@@ -228,7 +228,7 @@ class Delegator
|
|
228
228
|
params = { :filename => s, :fullpath => @includes[s].fullpath }
|
229
229
|
params[:defined] = false
|
230
230
|
params[:preprocessed] = @includes[s].is_preprocessed?
|
231
|
-
@cur.define(IDL::AST::Include, "$INC:"+s, params)
|
231
|
+
@cur.define(IDL::AST::Include, "$INC:" + s, params)
|
232
232
|
end
|
233
233
|
|
234
234
|
def pragma_prefix(s)
|
@@ -258,7 +258,7 @@ class Delegator
|
|
258
258
|
end
|
259
259
|
|
260
260
|
def handle_pragma(pragma_string)
|
261
|
-
unless @@pragma_handlers.values.
|
261
|
+
unless @@pragma_handlers.values.reduce(false) {|rc, h| h.call(self, @cur, pragma_string) || rc }
|
262
262
|
IDL.log(1, "RIDL - unrecognized pragma encountered: #{pragma_string}.")
|
263
263
|
end
|
264
264
|
end
|
@@ -299,8 +299,8 @@ class Delegator
|
|
299
299
|
end
|
300
300
|
|
301
301
|
def define_template_module(global, names)
|
302
|
-
if global || names.size>1
|
303
|
-
raise "no scoped identifier allowed for template module: #{(global ? '::' : '')+names.join('::')}"
|
302
|
+
if global || names.size > 1
|
303
|
+
raise "no scoped identifier allowed for template module: #{(global ? '::' : '') + names.join('::')}"
|
304
304
|
end
|
305
305
|
@cur = @cur.define(IDL::AST::TemplateModule, names[0])
|
306
306
|
@cur.annotations.concat(@annotation_stack)
|
@@ -562,7 +562,7 @@ class Delegator
|
|
562
562
|
root.introduce(first)
|
563
563
|
case node
|
564
564
|
when IDL::AST::Module, IDL::AST::TemplateModule,
|
565
|
-
IDL::AST::Interface,IDL::AST::Home, IDL::AST::Component,
|
565
|
+
IDL::AST::Interface, IDL::AST::Home, IDL::AST::Component,
|
566
566
|
IDL::AST::Porttype, IDL::AST::Connector,
|
567
567
|
IDL::AST::Struct, IDL::AST::Union, IDL::AST::Typedef,
|
568
568
|
IDL::AST::Exception, IDL::AST::Enum,
|
data/lib/ridl/expression.rb
CHANGED
@@ -86,7 +86,7 @@ module IDL
|
|
86
86
|
|
87
87
|
if _operands.size != n
|
88
88
|
raise format("%s must receive %d operand%s.",
|
89
|
-
self.typename, n, if (n>1) then "s" else "" end)
|
89
|
+
self.typename, n, if (n > 1) then "s" else "" end)
|
90
90
|
end
|
91
91
|
|
92
92
|
unless _operands.any? { |o| o.is_template? }
|
@@ -184,7 +184,7 @@ module IDL
|
|
184
184
|
superclass.checktype(*types)
|
185
185
|
|
186
186
|
# it's expected that Double, LongDouble is a Float.
|
187
|
-
s1,s2 = IDL::Type::Float, IDL::Type::Fixed
|
187
|
+
s1, s2 = IDL::Type::Float, IDL::Type::Fixed
|
188
188
|
if (t1 === s1 && t2 === s2) or (t1 === s2 && t2 === s1)
|
189
189
|
raise "#{self.name} about #{t1.typename} and #{t2.typename} is illegal."
|
190
190
|
end
|
@@ -210,7 +210,7 @@ module IDL
|
|
210
210
|
Applicable = Integer2::Applicable
|
211
211
|
def calculate(op)
|
212
212
|
if @idltype.is_unsigned?()
|
213
|
-
(2**@idltype.bits-1)-op
|
213
|
+
(2**@idltype.bits - 1) - op
|
214
214
|
else
|
215
215
|
~op
|
216
216
|
end
|
@@ -218,13 +218,13 @@ module IDL
|
|
218
218
|
end
|
219
219
|
|
220
220
|
class Or < Boolean2
|
221
|
-
def calculate(lop,rop); lop | rop; end
|
221
|
+
def calculate(lop, rop); lop | rop; end
|
222
222
|
end
|
223
223
|
class And < Boolean2
|
224
|
-
def calculate(lop,rop); lop & rop; end
|
224
|
+
def calculate(lop, rop); lop & rop; end
|
225
225
|
end
|
226
226
|
class Xor < Boolean2
|
227
|
-
def calculate(lop,rop); lop ^ rop; end
|
227
|
+
def calculate(lop, rop); lop ^ rop; end
|
228
228
|
end
|
229
229
|
|
230
230
|
class Shift < Integer2
|
@@ -236,32 +236,32 @@ module IDL
|
|
236
236
|
end
|
237
237
|
end
|
238
238
|
class LShift < Shift
|
239
|
-
def calculate(lop,rop)
|
239
|
+
def calculate(lop, rop)
|
240
240
|
check_rop(rop)
|
241
241
|
lop << rop
|
242
242
|
end
|
243
243
|
end
|
244
244
|
class RShift < Shift
|
245
|
-
def calculate(lop,rop)
|
245
|
+
def calculate(lop, rop)
|
246
246
|
check_rop(rop)
|
247
247
|
lop >> rop
|
248
248
|
end
|
249
249
|
end
|
250
250
|
|
251
251
|
class Add < Float2
|
252
|
-
def calculate(lop,rop); lop + rop; end
|
252
|
+
def calculate(lop, rop); lop + rop; end
|
253
253
|
end
|
254
254
|
class Minus < Float2
|
255
|
-
def calculate(lop,rop); lop - rop; end
|
255
|
+
def calculate(lop, rop); lop - rop; end
|
256
256
|
end
|
257
257
|
class Mult < Float2
|
258
|
-
def calculate(lop,rop); lop * rop; end
|
258
|
+
def calculate(lop, rop); lop * rop; end
|
259
259
|
end
|
260
260
|
class Div < Float2
|
261
|
-
def calculate(lop,rop); lop / rop; end
|
261
|
+
def calculate(lop, rop); lop / rop; end
|
262
262
|
end
|
263
263
|
class Mod < Integer2
|
264
|
-
def calculate(lop,rop); lop % rop; end
|
264
|
+
def calculate(lop, rop); lop % rop; end
|
265
265
|
end
|
266
266
|
end #of class Operation
|
267
267
|
end #of class Expression
|
data/lib/ridl/genfile.rb
CHANGED
@@ -67,7 +67,7 @@ module IDL
|
|
67
67
|
class Content
|
68
68
|
def initialize(sections = {})
|
69
69
|
# copy content map transforming all keys to symbols
|
70
|
-
@sections = sections.inject({}) {|m,(k,v)| m[k.to_sym] = v; m }
|
70
|
+
@sections = sections.inject({}) {|m, (k, v)| m[k.to_sym] = v; m }
|
71
71
|
end
|
72
72
|
|
73
73
|
def sections
|
@@ -96,7 +96,7 @@ module IDL
|
|
96
96
|
@path = path
|
97
97
|
@fullpath = File.expand_path(path)
|
98
98
|
@name = File.basename(path)
|
99
|
-
@ext = File.extname(path).sub(/^\./,'')
|
99
|
+
@ext = File.extname(path).sub(/^\./, '')
|
100
100
|
else
|
101
101
|
@path = @fullpath = @name = @ext = ''
|
102
102
|
end
|
data/lib/ridl/node.rb
CHANGED
@@ -19,7 +19,7 @@ module IDL::AST
|
|
19
19
|
@id = id.to_sym
|
20
20
|
# copy field map transforming all keys to symbols and
|
21
21
|
# detecting nested annotation objects
|
22
|
-
@fields = fields.inject({}) do |m,(k,v)|
|
22
|
+
@fields = fields.inject({}) do |m, (k, v)|
|
23
23
|
m[k.to_sym] = case v
|
24
24
|
when Array
|
25
25
|
v.collect { |ve| Hash === ve ? Annotation.new(*ve.to_a.first) : ve }
|
@@ -159,8 +159,8 @@ module IDL::AST
|
|
159
159
|
if id_arr.first == 'IDL'
|
160
160
|
id_arr.shift
|
161
161
|
id_str = id_arr.shift.to_s
|
162
|
-
raise 'ID identifiers should not start or end with \'/\'' if id_str[0,1]=='/' or id_str[-1, 1]=='/'
|
163
|
-
raise "ID identifiers should not start with one of '#{REPO_ID_XCHARS.join("', '")}'" if REPO_ID_XCHARS.include?(id_str[0,1])
|
162
|
+
raise 'ID identifiers should not start or end with \'/\'' if id_str[0, 1] == '/' or id_str[-1, 1] == '/'
|
163
|
+
raise "ID identifiers should not start with one of '#{REPO_ID_XCHARS.join("', '")}'" if REPO_ID_XCHARS.include?(id_str[0, 1])
|
164
164
|
raise 'Invalid ID! Only a..z, A..Z, 0..9, \'.\', \'-\', \'_\' or \'\/\' allowed for identifiers' unless REPO_ID_RE =~ id_str
|
165
165
|
end
|
166
166
|
@repo_id = id
|
@@ -184,8 +184,8 @@ module IDL::AST
|
|
184
184
|
|
185
185
|
def prefix=(pfx)
|
186
186
|
unless pfx.to_s.empty?
|
187
|
-
raise 'ID prefix should not start or end with \'/\'' if pfx[0,1]=='/' or pfx[-1, 1]=='/'
|
188
|
-
raise "ID prefix should not start with one of '#{REPO_ID_XCHARS.join("', '")}'" if REPO_ID_XCHARS.include?(pfx[0,1])
|
187
|
+
raise 'ID prefix should not start or end with \'/\'' if pfx[0, 1] == '/' or pfx[-1, 1] == '/'
|
188
|
+
raise "ID prefix should not start with one of '#{REPO_ID_XCHARS.join("', '")}'" if REPO_ID_XCHARS.include?(pfx[0, 1])
|
189
189
|
raise 'Invalid ID prefix! Only a..z, A..Z, 0..9, \'.\', \'-\', \'_\' or \'\/\' allowed' unless REPO_ID_RE =~ pfx
|
190
190
|
end
|
191
191
|
self.set_prefix(pfx)
|
@@ -199,7 +199,7 @@ module IDL::AST
|
|
199
199
|
if @repo_id.nil?
|
200
200
|
@repo_ver = "1.0" unless @repo_ver
|
201
201
|
format("IDL:%s%s:%s",
|
202
|
-
if @prefix.empty? then "" else @prefix+"/" end,
|
202
|
+
if @prefix.empty? then "" else @prefix + "/" end,
|
203
203
|
self.scopes.collect{|s| s.name}.join("/"),
|
204
204
|
@repo_ver)
|
205
205
|
else
|
@@ -912,7 +912,7 @@ module IDL::AST
|
|
912
912
|
# check if the matched name resulted in multiple different nodes or all the same
|
913
913
|
r_one = results.shift
|
914
914
|
unless results.all? {|r| r_one == r || (r_one.class == r.class && r_one.scoped_name == r.scoped_name) }
|
915
|
-
s = results.inject([r_one]) {|l,r| l << r unless l.include?(r); l }.collect{ |n| n.scoped_name }.join(", ")
|
915
|
+
s = results.inject([r_one]) {|l, r| l << r unless l.include?(r); l }.collect{ |n| n.scoped_name }.join(", ")
|
916
916
|
raise "\"#{_name}\" is ambiguous. " + s
|
917
917
|
end
|
918
918
|
end
|
@@ -1048,13 +1048,13 @@ module IDL::AST
|
|
1048
1048
|
@resolved_bases
|
1049
1049
|
end
|
1050
1050
|
|
1051
|
-
def operations(include_bases=false,traversed=nil)
|
1051
|
+
def operations(include_bases=false, traversed=nil)
|
1052
1052
|
ops = @children.find_all { |c| c.is_a?(IDL::AST::Operation) }
|
1053
1053
|
ops.concat(base_operations(traversed || [])) if include_bases
|
1054
1054
|
ops
|
1055
1055
|
end
|
1056
1056
|
|
1057
|
-
def attributes(include_bases=false,traversed=nil)
|
1057
|
+
def attributes(include_bases=false, traversed=nil)
|
1058
1058
|
atts = @children.find_all { |c| c.is_a?(IDL::AST::Attribute) }
|
1059
1059
|
atts.concat(base_attributes(traversed || [])) if include_bases
|
1060
1060
|
atts
|
@@ -1338,13 +1338,13 @@ module IDL::AST
|
|
1338
1338
|
@primarykey = key.node if key
|
1339
1339
|
end
|
1340
1340
|
|
1341
|
-
def operations(include_bases=false,traversed=nil)
|
1341
|
+
def operations(include_bases=false, traversed=nil)
|
1342
1342
|
ops = @children.find_all { |c| c.is_a?(IDL::AST::Operation) }
|
1343
1343
|
ops.concat(base_operations(traversed || [])) if include_bases
|
1344
1344
|
ops
|
1345
1345
|
end
|
1346
1346
|
|
1347
|
-
def attributes(include_bases=false,traversed=nil)
|
1347
|
+
def attributes(include_bases=false, traversed=nil)
|
1348
1348
|
atts = @children.find_all { |c| c.is_a?(IDL::AST::Attribute) }
|
1349
1349
|
atts.concat(base_attributes(traversed || [])) if include_bases
|
1350
1350
|
atts
|
@@ -1393,7 +1393,7 @@ module IDL::AST
|
|
1393
1393
|
@base = parent.node
|
1394
1394
|
end
|
1395
1395
|
|
1396
|
-
def ports(include_bases=false,traversed=nil)
|
1396
|
+
def ports(include_bases=false, traversed=nil)
|
1397
1397
|
ports = @children.inject([]) do |lst, c|
|
1398
1398
|
lst.concat(c.ports) if IDL::AST::Port === c
|
1399
1399
|
lst
|
@@ -1402,7 +1402,7 @@ module IDL::AST
|
|
1402
1402
|
ports
|
1403
1403
|
end
|
1404
1404
|
|
1405
|
-
def attributes(include_bases=false,traversed=nil)
|
1405
|
+
def attributes(include_bases=false, traversed=nil)
|
1406
1406
|
atts = @children.inject([]) do |lst, c|
|
1407
1407
|
if IDL::AST::Port === c
|
1408
1408
|
lst.concat(c.attributes)
|
@@ -1472,7 +1472,7 @@ module IDL::AST
|
|
1472
1472
|
@base = parent.node
|
1473
1473
|
end
|
1474
1474
|
|
1475
|
-
def ports(include_bases=false,traversed=nil)
|
1475
|
+
def ports(include_bases=false, traversed=nil)
|
1476
1476
|
ports = @children.inject([]) do |lst, c|
|
1477
1477
|
lst.concat(c.ports) if IDL::AST::Port === c
|
1478
1478
|
lst
|
@@ -1481,11 +1481,11 @@ module IDL::AST
|
|
1481
1481
|
ports
|
1482
1482
|
end
|
1483
1483
|
|
1484
|
-
def operations(include_bases=false,traversed=nil)
|
1484
|
+
def operations(include_bases=false, traversed=nil)
|
1485
1485
|
include_bases ? base_operations(traversed || []) : []
|
1486
1486
|
end
|
1487
1487
|
|
1488
|
-
def attributes(include_bases=false,traversed=nil)
|
1488
|
+
def attributes(include_bases=false, traversed=nil)
|
1489
1489
|
atts = @children.inject([]) do |lst, c|
|
1490
1490
|
if IDL::AST::Port === c
|
1491
1491
|
lst.concat(c.attributes)
|
@@ -1556,7 +1556,7 @@ module IDL::AST
|
|
1556
1556
|
raise "invalid type for #{typename} #{scoped_lm_name}: #{@idltype.typename}"
|
1557
1557
|
end
|
1558
1558
|
else
|
1559
|
-
unless @idltype.is_a?(IDL::Type::NodeType) && (@idltype.is_node?(IDL::AST::Eventtype) ||
|
1559
|
+
unless @idltype.is_a?(IDL::Type::NodeType) && (@idltype.is_node?(IDL::AST::Eventtype) || @idltype.is_node?(IDL::AST::TemplateParam))
|
1560
1560
|
raise "invalid type for #{typename} #{scoped_lm_name}: #{@idltype.typename}"
|
1561
1561
|
end
|
1562
1562
|
end
|
@@ -1794,7 +1794,7 @@ module IDL::AST
|
|
1794
1794
|
raise "#{typename} #{scoped_lm_name} cannot inherit from #{tc.node.typename} #{tc.node.scoped_lm_name} multiple times"
|
1795
1795
|
end
|
1796
1796
|
if (not rtc.node.is_abstract?) and @bases.size > 0
|
1797
|
-
raise "concrete basevalue #{tc.node.typename} #{tc.node.scoped_lm_name} MUST "+
|
1797
|
+
raise "concrete basevalue #{tc.node.typename} #{tc.node.scoped_lm_name} MUST " +
|
1798
1798
|
"be first and only non-abstract in inheritance list for #{typename} #{scoped_lm_name}"
|
1799
1799
|
end
|
1800
1800
|
@resolved_bases << rtc.node
|
@@ -1946,7 +1946,7 @@ module IDL::AST
|
|
1946
1946
|
@is_recursive = false
|
1947
1947
|
@has_incomplete_type = false
|
1948
1948
|
super(_name, _enclosure)
|
1949
|
-
@idltype
|
1949
|
+
@idltype = params[:type]
|
1950
1950
|
@visibility = (params[:visibility] == :public ? :public : :private)
|
1951
1951
|
unless @idltype.is_a?(IDL::Type::ScopedName) && @idltype.is_node?(IDL::AST::TemplateParam)
|
1952
1952
|
raise "Anonymous type definitions are not allowed!" if params[:type].is_anonymous?
|
@@ -2112,7 +2112,7 @@ module IDL::AST
|
|
2112
2112
|
attr_reader :idltype, :expression, :value
|
2113
2113
|
def initialize(_name, _enclosure, params)
|
2114
2114
|
super(_name, _enclosure)
|
2115
|
-
@idltype
|
2115
|
+
@idltype = params[:type]
|
2116
2116
|
@expression = params[:expression]
|
2117
2117
|
@value = nil
|
2118
2118
|
unless @idltype.is_a?(IDL::Type::ScopedName) && @idltype.is_node?(IDL::AST::TemplateParam)
|
@@ -2158,7 +2158,7 @@ module IDL::AST
|
|
2158
2158
|
attr_reader :idltype
|
2159
2159
|
def initialize(_name, _enclosure, params)
|
2160
2160
|
super(_name, _enclosure)
|
2161
|
-
@idltype
|
2161
|
+
@idltype = params[:type]
|
2162
2162
|
@attribute = params[:attribute]
|
2163
2163
|
unless ATTRIBUTE_MAP.has_key?(@attribute)
|
2164
2164
|
raise "invalid attribute for parameter: #{params[:attribute]}"
|
@@ -2210,7 +2210,7 @@ module IDL::AST
|
|
2210
2210
|
|
2211
2211
|
def initialize(_name, _enclosure, params)
|
2212
2212
|
super(_name, _enclosure)
|
2213
|
-
@idltype
|
2213
|
+
@idltype = params[:type]
|
2214
2214
|
@oneway = (params[:oneway] == true)
|
2215
2215
|
@in = []
|
2216
2216
|
@out = []
|
@@ -2322,7 +2322,7 @@ module IDL::AST
|
|
2322
2322
|
attr_reader :get_raises, :set_raises
|
2323
2323
|
def initialize(_name, _enclosure, params)
|
2324
2324
|
super(_name, _enclosure)
|
2325
|
-
@idltype
|
2325
|
+
@idltype = params[:type]
|
2326
2326
|
@get_raises = []
|
2327
2327
|
@set_raises = []
|
2328
2328
|
unless @idltype.is_a?(IDL::Type::ScopedName) && @idltype.is_node?(IDL::AST::TemplateParam)
|
@@ -2726,7 +2726,7 @@ module IDL::AST
|
|
2726
2726
|
attr_reader :idltype, :enum, :value
|
2727
2727
|
def initialize(_name, _enclosure, params)
|
2728
2728
|
super(_name, _enclosure)
|
2729
|
-
@idltype
|
2729
|
+
@idltype = IDL::Type::ULong.new
|
2730
2730
|
@enum = params[:enum]
|
2731
2731
|
@value = params[:value]
|
2732
2732
|
@enum.add_enumerator(self)
|
data/lib/ridl/options.rb
CHANGED
@@ -124,7 +124,7 @@ module IDL
|
|
124
124
|
when Array
|
125
125
|
v.collect {|e| _dup_elem(e) }
|
126
126
|
when Hash
|
127
|
-
v.inject({}) {|h, (k,e)| h[k] = _dup_elem(e); h }
|
127
|
+
v.inject({}) {|h, (k, e)| h[k] = _dup_elem(e); h }
|
128
128
|
when OpenStruct
|
129
129
|
v.class.new(_dup_elem(v.__send__(:table)))
|
130
130
|
else
|
data/lib/ridl/optparse_ext.rb
CHANGED
data/lib/ridl/runner.rb
CHANGED
@@ -185,7 +185,7 @@ module IDL
|
|
185
185
|
@optparser.parse!(argv)
|
186
186
|
rescue ArgumentError => ex
|
187
187
|
IDL.error(ex.inspect)
|
188
|
-
IDL.error(ex.backtrace.join("\n")) if IDL.verbose_level>0
|
188
|
+
IDL.error(ex.backtrace.join("\n")) if IDL.verbose_level > 0
|
189
189
|
return false
|
190
190
|
end
|
191
191
|
|
@@ -201,7 +201,7 @@ module IDL
|
|
201
201
|
|
202
202
|
input_base = File.basename(argv.first)
|
203
203
|
if input_base != argv.first
|
204
|
-
options[:xincludepaths] << (File.dirname(argv.first)+'/')
|
204
|
+
options[:xincludepaths] << (File.dirname(argv.first) + '/')
|
205
205
|
end
|
206
206
|
|
207
207
|
return !parse("#include \"#{input_base}\"", options).nil?
|
@@ -222,7 +222,7 @@ module IDL
|
|
222
222
|
raise 'cannot read from STDOUT' if $stdout == _fio
|
223
223
|
|
224
224
|
# parse IDL source
|
225
|
-
IDL.log(1, "RIDL - parsing #{IO === _idlfile ? 'from STDIN': (StringIO === _idlfile ? 'from string' : _idlfile)}")
|
225
|
+
IDL.log(1, "RIDL - parsing #{IO === _idlfile ? 'from STDIN' : (StringIO === _idlfile ? 'from string' : _idlfile)}")
|
226
226
|
|
227
227
|
unless _parser = parse(_fio, _opts)
|
228
228
|
return false
|
@@ -248,7 +248,7 @@ module IDL
|
|
248
248
|
end
|
249
249
|
|
250
250
|
rescue Backend::ProcessStop
|
251
|
-
IDL.log(2, "RIDL - processing #{IO === _idlfile ? 'from STDIN': (StringIO === _idlfile ? 'from string' : _idlfile)} stopped with \"#{$!.message}\"")
|
251
|
+
IDL.log(2, "RIDL - processing #{IO === _idlfile ? 'from STDIN' : (StringIO === _idlfile ? 'from string' : _idlfile)} stopped with \"#{$!.message}\"")
|
252
252
|
|
253
253
|
rescue => ex
|
254
254
|
IDL.error(ex)
|
@@ -310,7 +310,7 @@ module IDL
|
|
310
310
|
end
|
311
311
|
_arg = _fpath unless _fpath.nil?
|
312
312
|
end
|
313
|
-
_opts[:xincludepaths] << (File.dirname(_arg)+'/')
|
313
|
+
_opts[:xincludepaths] << (File.dirname(_arg) + '/')
|
314
314
|
end
|
315
315
|
|
316
316
|
_opts[:outputdir] ||= '.'
|
@@ -329,20 +329,20 @@ module IDL
|
|
329
329
|
def init_optparser
|
330
330
|
script_name = File.basename($0, '.*')
|
331
331
|
if not script_name =~ /ridlc/
|
332
|
-
script_name = 'ruby '
|
332
|
+
script_name = 'ruby ' + $0
|
333
333
|
end
|
334
334
|
|
335
335
|
# set up option parser with common options
|
336
336
|
opts = OptionParser.new
|
337
337
|
opts.banner = "Usage: #{script_name} [:backend] [options] [<idlfile> [<idlfile> ...]]\n\n" +
|
338
|
-
" backend\t\tSpecifies the IDL language mapping backend to use.\n"+
|
339
|
-
" \t\tDefault = :null\n\n"+
|
338
|
+
" backend\t\tSpecifies the IDL language mapping backend to use.\n" +
|
339
|
+
" \t\tDefault = :null\n\n" +
|
340
340
|
" Active language mapping = :#{backend.name}"
|
341
341
|
opts.separator ''
|
342
342
|
opts.on('-I PATH', '--include=PATH', String,
|
343
343
|
'Adds include searchpath.',
|
344
344
|
'Default: none') { |v|
|
345
|
-
self.options[:includepaths] << (v.end_with?('\\','/') ? v : v+'/')
|
345
|
+
self.options[:includepaths] << (v.end_with?('\\', '/') ? v : v + '/')
|
346
346
|
}
|
347
347
|
opts.on('-Dmacro=[value]', String, 'defines preprocessor macro') { |v|
|
348
348
|
name, value = v.split('=')
|
data/lib/ridl/scanner.rb
CHANGED
@@ -73,14 +73,14 @@ module IDL
|
|
73
73
|
@pos.line += 1
|
74
74
|
@pos.column = 1
|
75
75
|
end
|
76
|
-
|
76
|
+
else
|
77
77
|
@pos.column += 1
|
78
78
|
end
|
79
79
|
|
80
80
|
if false
|
81
81
|
if not @bwd.nil? or cur.nil? or @fwd.nil?
|
82
82
|
printf("%c(%02x), %c(%02x), %c(%02x) @(l:%d,c:%d)\n",
|
83
|
-
@bwd
|
83
|
+
@bwd, @bwd, cur, cur, @fwd, @fwd, @pos.line, @pos.column)
|
84
84
|
end
|
85
85
|
end
|
86
86
|
@bwd = cur
|
@@ -281,7 +281,7 @@ module IDL
|
|
281
281
|
end
|
282
282
|
@stack << [:include, @prefix, @ifdef, @in, @ifskip]
|
283
283
|
# record file dir as new searchpath
|
284
|
-
@xincludepaths << (File.dirname(fpath)+'/')
|
284
|
+
@xincludepaths << (File.dirname(fpath) + '/')
|
285
285
|
@prefix = nil
|
286
286
|
@ifdef = Array.new
|
287
287
|
@in = In.new(File.open(fpath, 'r'), fpath)
|
@@ -299,7 +299,7 @@ module IDL
|
|
299
299
|
@expansions.include?(define)
|
300
300
|
end
|
301
301
|
def more_source?
|
302
|
-
@stack.size>0
|
302
|
+
@stack.size > 0
|
303
303
|
end
|
304
304
|
def in_expansion?
|
305
305
|
more_source? and @stack.last[0] == :define
|
@@ -308,7 +308,7 @@ module IDL
|
|
308
308
|
# make sure to close the input source
|
309
309
|
@in.close
|
310
310
|
# check if we have any previous source still stacked up
|
311
|
-
if @stack.size>0
|
311
|
+
if @stack.size > 0
|
312
312
|
if @stack.last[0] == :include
|
313
313
|
@xincludepaths.pop # remove directory of finished include
|
314
314
|
@directiver.leave_include
|
@@ -324,7 +324,7 @@ module IDL
|
|
324
324
|
@ifdef.empty? || @ifdef.last
|
325
325
|
end
|
326
326
|
def positions
|
327
|
-
@stack.reverse.inject(@in.nil? ? [] : [@in.position]) {|pos_arr,(_, _, _,in_, _)| pos_arr << in_.position }
|
327
|
+
@stack.reverse.inject(@in.nil? ? [] : [@in.position]) {|pos_arr, (_, _, _, in_, _)| pos_arr << in_.position }
|
328
328
|
end
|
329
329
|
def parse_error(msg, ex = nil)
|
330
330
|
e = IDL::ParseError.new(msg, positions)
|
@@ -334,7 +334,7 @@ module IDL
|
|
334
334
|
|
335
335
|
LFCR = [ (?\n), (?\r) ]
|
336
336
|
SPACES = [ (?\ ), (?\t) ]
|
337
|
-
WHITESPACE = SPACES+LFCR
|
337
|
+
WHITESPACE = SPACES + LFCR
|
338
338
|
|
339
339
|
ANNOTATION = ?@
|
340
340
|
ANNOTATION_STR = '@'
|
@@ -370,7 +370,7 @@ module IDL
|
|
370
370
|
long manages mirrorport module multiple native Object octet oneway out port porttype primarykey private provides
|
371
371
|
public publishes raises readonly setraises sequence short string struct supports switch TRUE truncatable typedef
|
372
372
|
typeid typename typeprefix unsigned union uses ValueBase valuetype void wchar wstring
|
373
|
-
).inject(TokenRegistry.new) { |h,a| h[a.downcase.to_sym] = a; h }
|
373
|
+
).inject(TokenRegistry.new) { |h, a| h[a.downcase.to_sym] = a; h }
|
374
374
|
|
375
375
|
LITERALS = [
|
376
376
|
:integer_literal,
|
@@ -760,7 +760,7 @@ module IDL
|
|
760
760
|
|
761
761
|
def resolve_define(id, stack = [])
|
762
762
|
return id if %w(true false).include?(id)
|
763
|
-
IDL.log(3,"*** RIDL - resolve_define(#{id})")
|
763
|
+
IDL.log(3, "*** RIDL - resolve_define(#{id})")
|
764
764
|
if @defined.has_key?(id)
|
765
765
|
define_ = @defined[id]
|
766
766
|
stack << id
|
@@ -773,7 +773,7 @@ module IDL
|
|
773
773
|
end
|
774
774
|
|
775
775
|
def eval_directive(s)
|
776
|
-
IDL.log(3,"** RIDL - eval_directive(#{s})")
|
776
|
+
IDL.log(3, "** RIDL - eval_directive(#{s})")
|
777
777
|
rc = eval(s)
|
778
778
|
case rc
|
779
779
|
when FalseClass, TrueClass
|
@@ -789,7 +789,7 @@ module IDL
|
|
789
789
|
@in.skipwhile {|c| SPACES.include?(c) }
|
790
790
|
s = getline
|
791
791
|
/^(\w*)\s*/ === s
|
792
|
-
s1,s2 = $1, $' #'
|
792
|
+
s1, s2 = $1, $' #'
|
793
793
|
|
794
794
|
if /(else|endif|elif)/ === s1
|
795
795
|
|
@@ -822,7 +822,7 @@ module IDL
|
|
822
822
|
else
|
823
823
|
while s2 =~ /(^|[\W])defined\s*\(\s*(\w+)\s*\)/
|
824
824
|
def_id = $2
|
825
|
-
s2.gsub!(/(^|[\W])(defined\s*\(\s*\w+\s*\))/, '\1'+"#{@defined.has_key?(def_id).to_s}")
|
825
|
+
s2.gsub!(/(^|[\W])(defined\s*\(\s*\w+\s*\))/, '\1' + "#{@defined.has_key?(def_id).to_s}")
|
826
826
|
end
|
827
827
|
s2.gsub!(/(^|[\W])([A-Za-z_][\w]*)/) do |_| "#{$1}#{resolve_define($2)}" end
|
828
828
|
begin
|
@@ -854,10 +854,10 @@ module IDL
|
|
854
854
|
if do_parse?
|
855
855
|
# match 'defined(Foo)' or 'defined Foo'
|
856
856
|
while s2 =~ /(^|[\W])defined(\s*\(\s*(\w+)\s*\)|\s+(\w+))/
|
857
|
-
IDL.log(3,"** RIDL - parse_directive : resolving 'defined(#{$3 || $4})'")
|
857
|
+
IDL.log(3, "** RIDL - parse_directive : resolving 'defined(#{$3 || $4})'")
|
858
858
|
def_id = $3 || $4
|
859
859
|
# resolve 'defined' expression to 'true' or 'false' according to actual macro definition
|
860
|
-
s2.gsub!(/(^|[\W])(defined\s*[\s\(]\s*#{def_id}(\s*\))?)/, '\1'+"#{@defined.has_key?(def_id).to_s}")
|
860
|
+
s2.gsub!(/(^|[\W])(defined\s*[\s\(]\s*#{def_id}(\s*\))?)/, '\1' + "#{@defined.has_key?(def_id).to_s}")
|
861
861
|
end
|
862
862
|
# match and resolve any macro variables listed in conditional expression
|
863
863
|
s2.gsub!(/(^|[\W])([A-Za-z_][\w]*)/) do |_| "#{$1}#{resolve_define($2)}" end
|
@@ -897,11 +897,11 @@ module IDL
|
|
897
897
|
@defined.delete(s2)
|
898
898
|
|
899
899
|
when 'include'
|
900
|
-
if s2[0,1] == '"' || s2[0,1] == '<'
|
901
|
-
quoted_inc = (s2[0,1] == '"')
|
902
|
-
if s2.size>2
|
900
|
+
if s2[0, 1] == '"' || s2[0, 1] == '<'
|
901
|
+
quoted_inc = (s2[0, 1] == '"')
|
902
|
+
if s2.size > 2
|
903
903
|
s2.strip!
|
904
|
-
s2 = s2.slice(1..(s2.size-2))
|
904
|
+
s2 = s2.slice(1..(s2.size - 2))
|
905
905
|
else
|
906
906
|
s2 = ''
|
907
907
|
end
|
@@ -941,7 +941,7 @@ module IDL
|
|
941
941
|
while true
|
942
942
|
ch = @in.getc
|
943
943
|
if ch.nil?
|
944
|
-
if @ifdef.size>0 and !in_expansion?
|
944
|
+
if @ifdef.size > 0 and !in_expansion?
|
945
945
|
parse_error 'mismatched #if/#endif'
|
946
946
|
end
|
947
947
|
if more_source?
|
data/lib/ridl/type.rb
CHANGED
data/lib/ridl/version.rb
CHANGED
@@ -14,7 +14,7 @@ module IDL
|
|
14
14
|
|
15
15
|
RIDL_VERSION_MAJOR = 2
|
16
16
|
RIDL_VERSION_MINOR = 8
|
17
|
-
RIDL_VERSION_RELEASE =
|
17
|
+
RIDL_VERSION_RELEASE = 1
|
18
18
|
RIDL_VERSION = "#{RIDL_VERSION_MAJOR}.#{RIDL_VERSION_MINOR}.#{RIDL_VERSION_RELEASE}"
|
19
19
|
RIDL_COPYRIGHT = "Copyright (c) 2007-#{Time.now.year} Remedy IT Expertise BV, The Netherlands".freeze
|
20
20
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ridl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.8.
|
4
|
+
version: 2.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Martin Corino
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-08-11 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: OMG v3.3 compliant native Ruby IDL compiler frontend with support for
|
15
15
|
pluggable (and stackable) backends.
|
@@ -63,7 +63,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
63
63
|
- !ruby/object:Gem::Version
|
64
64
|
version: '0'
|
65
65
|
requirements: []
|
66
|
-
rubygems_version: 3.1.
|
66
|
+
rubygems_version: 3.1.6
|
67
67
|
signing_key:
|
68
68
|
specification_version: 4
|
69
69
|
summary: Ruby OMG IDL compiler
|