use cattr instead of metaclass
so we can catch it in the compiler, like also attr define cattr in adapter, no change in tests !
This commit is contained in:
parent
8d4eab72bf
commit
9bd2195a15
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
@page_size = 1024
|
@page_size = 1024
|
||||||
@reserve_size = 10
|
@reserve_size = 10
|
||||||
class << self; attr_accessor :page_size ; attr :reserve_size end
|
cattr :page_size , :reserve_size
|
||||||
|
|
||||||
# initialize for a given type (for_type). The attribute that is used to create the
|
# initialize for a given type (for_type). The attribute that is used to create the
|
||||||
# list is the first that starts with next_ . "next" itself would have been nice and general
|
# list is the first that starts with next_ . "next" itself would have been nice and general
|
||||||
|
@ -54,6 +54,14 @@ module Parfait
|
|||||||
@memory._set(index , value)
|
@memory._set(index , value)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.cattr( *names )
|
||||||
|
names.each do |ca|
|
||||||
|
class_eval "@@#{ca} = 0"
|
||||||
|
class_eval "def self.#{ca}; return @#{ca};end"
|
||||||
|
class_eval "def self.#{ca}=(val); @#{ca} = val;end"
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# new list from ruby array to be precise
|
# new list from ruby array to be precise
|
||||||
|
Loading…
Reference in New Issue
Block a user