mirror of
https://github.com/github/codeql.git
synced 2026-02-19 08:23:45 +01:00
86 lines
973 B
Ruby
86 lines
973 B
Ruby
class E
|
|
private def private1
|
|
end
|
|
|
|
def public
|
|
end
|
|
|
|
def private2
|
|
end
|
|
private :private2
|
|
|
|
private
|
|
|
|
def private3
|
|
end
|
|
|
|
def private4
|
|
end
|
|
|
|
def self.public2
|
|
end
|
|
|
|
private_class_method def self.private5
|
|
end
|
|
|
|
def self.private6
|
|
end
|
|
private_class_method :private6
|
|
end
|
|
|
|
def private_on_main
|
|
end
|
|
|
|
E.new.private1
|
|
E.new.private2
|
|
E.new.private3
|
|
E.new.private4
|
|
E.new.public
|
|
|
|
private_on_main
|
|
|
|
module F
|
|
private def private1
|
|
end
|
|
|
|
def public
|
|
end
|
|
|
|
def private2
|
|
end
|
|
private :private2
|
|
|
|
private
|
|
|
|
def private3
|
|
end
|
|
|
|
def private4
|
|
end
|
|
end
|
|
|
|
class PrivateOverride1
|
|
private def m1
|
|
puts "PrivateOverride1#m1"
|
|
end
|
|
|
|
private def m2
|
|
puts "PrivateOverride1#m2"
|
|
end
|
|
|
|
def call_m1
|
|
m1
|
|
end
|
|
end
|
|
|
|
class PrivateOverride2 < PrivateOverride1
|
|
private def m1
|
|
puts "PrivateOverride2#m1"
|
|
m2
|
|
PrivateOverride1.new.m1 # NoMethodError
|
|
end
|
|
end
|
|
|
|
PrivateOverride2.new.call_m1
|
|
PrivateOverride2.new.m1 # NoMethodError
|