if self.class.include?(Msf::Payload::Single) and
self.class.include?(Msf::Payload::Stager)
self.module_info['Stage'] = {}
我试图执行“puts self.class”输出是“对象”。提前谢谢。
答案 0 :(得分:3)
self.class
返回对象类的引用。如果作为参数传递的模块包含在当前模块中,则Module#include?
方法返回true
。
换句话说,您引用的代码实际上是在检查您正在操作的实例的类是混合Single
还是Stager
类。
以下是一个例子:
module One
end
class Two
include One
end
class Three
end
t = Two.new
t.class.include?(One)
# => true
t = Three.new
t.class.include?(One)
# => false