multiarray 0.8.0 → 0.9.0

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.
data/Rakefile CHANGED
@@ -6,7 +6,7 @@ require 'rake/packagetask'
6
6
  require 'rbconfig'
7
7
 
8
8
  PKG_NAME = 'multiarray'
9
- PKG_VERSION = '0.8.0'
9
+ PKG_VERSION = '0.9.0'
10
10
  RB_FILES = FileList[ 'lib/**/*.rb' ]
11
11
  TC_FILES = FileList[ 'test/tc_*.rb' ]
12
12
  TS_FILES = FileList[ 'test/ts_*.rb' ]
@@ -83,8 +83,10 @@ module Hornetseye
83
83
  #
84
84
  # @private
85
85
  def subst( hash )
86
+ # subst_var = @index.subst hash
87
+ # Lambda.new subst_var, @term.subst( @index => subst_var ).subst( hash )
86
88
  subst_var = @index.subst hash
87
- Lambda.new subst_var, @term.subst( @index => subst_var ).subst( hash )
89
+ Lambda.new subst_var, @term.subst( hash.merge( @index => subst_var ) )
88
90
  end
89
91
 
90
92
  # Lookup element of an array
@@ -155,6 +155,10 @@ module Hornetseye
155
155
  self
156
156
  end
157
157
 
158
+ def rgb?
159
+ false
160
+ end
161
+
158
162
  # Get corresponding boolean-based datatype
159
163
  #
160
164
  # @return [Class] Returns +BOOL+.
@@ -376,6 +380,10 @@ module Hornetseye
376
380
  array_type.dimension
377
381
  end
378
382
 
383
+ def rgb?
384
+ array_type.rgb?
385
+ end
386
+
379
387
  # Extract native value if this is an element
380
388
  #
381
389
  # @return [Node,Object] Returns +self+.
@@ -636,11 +644,6 @@ module Hornetseye
636
644
  retval.demand.get
637
645
  else
638
646
  Store.new( array_type.new, self ).demand.get
639
- #Hornetseye::lazy do
640
- # retval = array_type.new
641
- # retval[] = self
642
- # retval.get
643
- #end
644
647
  end
645
648
  end
646
649
 
@@ -652,11 +655,6 @@ module Hornetseye
652
655
  #
653
656
  # @private
654
657
  def simplify
655
- #if Thread.current[ :function ] and dimension == 0
656
- # demand.dup
657
- #else
658
- # demand
659
- #end
660
658
  dimension == 0 ? demand.dup : demand
661
659
  end
662
660
 
@@ -315,6 +315,10 @@ module Hornetseye
315
315
  self == other
316
316
  end
317
317
 
318
+ def rgb?
319
+ true
320
+ end
321
+
318
322
  end
319
323
 
320
324
  def initialize( value = self.class.default )
@@ -167,6 +167,10 @@ module Hornetseye
167
167
  element_type.dimension + 1
168
168
  end
169
169
 
170
+ def rgb?
171
+ element_type.rgb?
172
+ end
173
+
170
174
  def contiguous
171
175
  self
172
176
  end
@@ -232,10 +236,14 @@ module Hornetseye
232
236
  end
233
237
 
234
238
  def inspect
235
- if dimension == 1
236
- "Sequence(#{typecode.inspect},#{num_elements.inspect})"
239
+ if element_type and num_elements
240
+ if dimension == 1
241
+ "Sequence(#{typecode.inspect},#{num_elements.inspect})"
242
+ else
243
+ "MultiArray(#{typecode.inspect},#{shape.join ','})"
244
+ end
237
245
  else
238
- "MultiArray(#{typecode.inspect},#{shape.join ','})"
246
+ 'MultiArray(?,?)'
239
247
  end
240
248
  end
241
249
 
@@ -251,10 +259,14 @@ module Hornetseye
251
259
  #
252
260
  # @private
253
261
  def descriptor( hash )
254
- if dimension == 1
255
- "Sequence(#{typecode.descriptor( hash )},#{num_elements.to_s})"
262
+ if element_type and num_elements
263
+ if dimension == 1
264
+ "Sequence(#{typecode.descriptor( hash )},#{num_elements.to_s})"
265
+ else
266
+ "MultiArray(#{typecode.descriptor( hash )},#{shape.join ','})"
267
+ end
256
268
  else
257
- "MultiArray(#{typecode.descriptor( hash )},#{shape.join ','})"
269
+ 'MultiArray(?,?)'
258
270
  end
259
271
  end
260
272
 
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
- - 8
7
+ - 9
8
8
  - 0
9
- version: 0.8.0
9
+ version: 0.9.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Jan Wedekind
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-10-07 00:00:00 +01:00
17
+ date: 2010-10-12 00:00:00 +01:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency