method marking for labels

This commit is contained in:
Torsten Ruger 2015-11-03 16:22:24 +02:00
parent 6882f39645
commit ca1dc36e3d
2 changed files with 17 additions and 0 deletions

View File

@ -18,6 +18,11 @@ module Register
"Label: #{@name} (#{self.next.class})"
end
# a method start has a label of the form Class.method , test for that
def is_method
@name.split(".").length == 2
end
def to_ac labels = []
return [] if labels.include?(self)
labels << self
@ -57,6 +62,11 @@ module Register
self.next.set_position(position,labels)
end
# shame we need this, just for logging
def byte_length
0
end
def each_label labels =[] , &block
return if labels.include?(self)
labels << self

View File

@ -70,5 +70,12 @@ module Register
start.each_label { |l| count += 1 }
assert_equal 2 , count
end
def test_label_is_method
label = Label.new("test" , "Object.test")
assert label.is_method
end
def test_label_is_not_method
assert ! @label.is_method
end
end
end