rename get/set internal
to _word , because _byte versions are coming
This commit is contained in:
@ -154,7 +154,7 @@ module Parfait
|
||||
end
|
||||
|
||||
define_method :get_length do
|
||||
r = get_internal( offset ) #one for layout
|
||||
r = get_internal_word( offset ) #one for layout
|
||||
r.nil? ? 0 : r
|
||||
end
|
||||
|
||||
@ -166,7 +166,7 @@ module Parfait
|
||||
grow_to(index)
|
||||
end
|
||||
# start one higher than offset, which is where the length is
|
||||
set_internal( index + offset, value)
|
||||
set_internal_word( index + offset, value)
|
||||
end
|
||||
|
||||
# set the value at index.
|
||||
@ -176,7 +176,7 @@ module Parfait
|
||||
ret = nil
|
||||
if(index <= self.get_length)
|
||||
# start one higher than offset, which is where the length is
|
||||
ret = get_internal(index + offset )
|
||||
ret = get_internal_word(index + offset )
|
||||
end
|
||||
ret
|
||||
end
|
||||
@ -187,14 +187,14 @@ module Parfait
|
||||
return if old_length >= len
|
||||
# raise "bounds error at #{len}" if( len + offset > 16 )
|
||||
# be nice to use the indexed_length , but that relies on booted space
|
||||
set_internal( offset , len) #one for layout
|
||||
set_internal_word( offset , len) #one for layout
|
||||
end
|
||||
|
||||
define_method :shrink_to do | len|
|
||||
raise "Only positive lenths, #{len}" if len < 0
|
||||
old_length = self.get_length
|
||||
return if old_length <= len
|
||||
set_internal( offset , len)
|
||||
set_internal_word( offset , len)
|
||||
end
|
||||
|
||||
end
|
||||
|
@ -74,8 +74,8 @@ module Parfait
|
||||
raise "Use variable_index instead"
|
||||
end
|
||||
|
||||
# index of the variable when using get_internal
|
||||
# (get_internal is 1 based and 1 is always the layout)
|
||||
# index of the variable when using get_internal_word
|
||||
# (get_internal_word is 1 based and 1 is always the layout)
|
||||
def variable_index name
|
||||
has = super_index(name)
|
||||
return nil unless has
|
||||
|
@ -41,11 +41,11 @@ module Parfait
|
||||
end
|
||||
|
||||
# 1 -based index
|
||||
def get_internal(index)
|
||||
def get_internal_word(index)
|
||||
@memory[index]
|
||||
end
|
||||
# 1 -based index
|
||||
def set_internal(index , value)
|
||||
def set_internal_word(index , value)
|
||||
raise "failed init for #{self.class}" unless @memory
|
||||
raise "Word[#{index}] = " if((self.class == Parfait::Word) and value.nil? )
|
||||
@memory[index] = value
|
||||
@ -80,16 +80,16 @@ module Parfait
|
||||
def set_layout(layout)
|
||||
# puts "Layout was set for #{self.class}"
|
||||
raise "Nil layout" unless layout
|
||||
set_internal(LAYOUT_INDEX , layout)
|
||||
set_internal_word(LAYOUT_INDEX , layout)
|
||||
end
|
||||
|
||||
# so we can keep the raise in get_layout
|
||||
def has_layout?
|
||||
! get_internal(LAYOUT_INDEX).nil?
|
||||
! get_internal_word(LAYOUT_INDEX).nil?
|
||||
end
|
||||
|
||||
def get_layout()
|
||||
l = get_internal(LAYOUT_INDEX)
|
||||
l = get_internal_word(LAYOUT_INDEX)
|
||||
#puts "get layout for #{self.class} returns #{l.class}"
|
||||
raise "No layout #{self.object_id.to_s(16)}:#{self.class} " unless l
|
||||
return l
|
||||
@ -108,13 +108,13 @@ module Parfait
|
||||
index = instance_variable_defined(name)
|
||||
#puts "getting #{name} at #{index}"
|
||||
return nil if index == nil
|
||||
return get_internal(index)
|
||||
return get_internal_word(index)
|
||||
end
|
||||
|
||||
def set_instance_variable name , value
|
||||
index = instance_variable_defined(name)
|
||||
return nil if index == nil
|
||||
return set_internal(index , value)
|
||||
return set_internal_word(index , value)
|
||||
end
|
||||
|
||||
def instance_variable_defined name
|
||||
|
@ -92,13 +92,13 @@ module Parfait
|
||||
word_index = (index - 1) / 4 + 1 + Word.get_length_index
|
||||
rest = ((index - 1) % 4)
|
||||
shifted = char << (rest * 8)
|
||||
was = get_internal( word_index )
|
||||
was = get_internal_word( word_index )
|
||||
was = 0 unless was.is_a?(Numeric)
|
||||
mask = 0xFF << (rest * 8)
|
||||
mask = 0xFFFFFFFF - mask
|
||||
masked = was & mask
|
||||
put = masked + shifted
|
||||
set_internal( word_index , put )
|
||||
set_internal_word( word_index , put )
|
||||
msg = "set index=#{index} word_index=#{word_index} rest=#{rest}= "
|
||||
msg += "char=#{char.to_s(16)} shifted=#{shifted.to_s(16)} "
|
||||
msg += "was=#{was.to_s(16)} masked=#{masked.to_s(16)} put=#{put.to_s(16)}"
|
||||
@ -114,7 +114,7 @@ module Parfait
|
||||
index = range_correct_index(at)
|
||||
word_index = (index - 1 ) / 4 + 1 + Word.get_length_index
|
||||
rest = ((index - 1) % 4)
|
||||
char = get_internal(word_index)
|
||||
char = get_internal_word(word_index)
|
||||
char = 0 unless char.is_a?(Numeric)
|
||||
shifted = char >> (8 * rest)
|
||||
ret = shifted & 0xFF
|
||||
|
Reference in New Issue
Block a user