oop/public_visibility_parens.rb
tests/_examples/oop/public_visibility_parens.rb in the metorex repository.
class Ancestor
private
def redefined_later
:before
end
end
class Descendant < Ancestor
public(:redefined_later)
end
class Ancestor
def redefined_later
:after
end
end
puts(Descendant.new.redefined_later.inspect)
puts(Descendant.public_instance_methods(false).inspect)
class SameVisibility < Ancestor
public(:redefined_later)
end
puts(SameVisibility.public_instance_methods(false).inspect)
class Toggling < Ancestor
private(:redefined_later)
public(:redefined_later)
end
puts(Toggling.public_instance_methods(false).inspect)
puts(Toggling.private_instance_methods(false).inspect)
Output:
:after
[:redefined_later]
[]
[:redefined_later]
[]