Я пытаюсь высушить какой-то код. Как сделать композицию и/или наследование рубином с помощью этого фрагмента кода.рубин: как сделать наследование или компостирование
module Ns4
module Maps
module StrokeStyle
class RedOutline
def self.strokeColor
"red"
end
def self.strokeWeight
4
end
end
class Random
def self.strokeColor
[ "#808080", "#909090" ].sample(1)[0]
end
def self.strokeWeight
4
end
end
class Transparent
def self.strokeColor
"transparent"
end
def self.strokeWeight
0
end
end
end
end
end
В принципе, я хочу уменьшить дублирование логики, где это возможно.
'base.singleton_class.send (: attr_accessor, *% i | strokeColor strokeWeight |)' :) Кроме того, я сомневаюсь, что он будет работать со случайным элементом массива. – mudasobwa
@mudasobwa согласен. –