class Metasm::C::Function
Attributes
args[RW]
type[RW]
varargs[RW]
Public Class Methods
new(type=nil, args=nil)
click to toggle source
# File metasm/parse_c.rb, line 213 def initialize(type=nil, args=nil) @type = type @args = args if args end
Public Instance Methods
base()
click to toggle source
# File metasm/parse_c.rb, line 218 def base ; @type.base ; end
dump_declarator(decl, scope, r=[CRenderString.new], dep=[])
click to toggle source
# File metasm/parse_c.rb, line 3622 def dump_declarator(decl, scope, r=[CRenderString.new], dep=[]) decl.last << '()' if decl.last.empty? decl.last << '(' if args @args.each { |arg| decl.last << ', ' if decl.last[-1] != ?( decl, dep = arg.dump_def(scope, decl, dep) } if varargs decl.last << ', ' if decl.last[-1] != ?( decl.last << '...' else decl.last << 'void' if @args.empty? end end decl.last << ')' @type.dump_declarator(decl, scope, r, dep) end
dump_initializer(init, scope, r=[CRenderString.new], dep=[])
click to toggle source
# File metasm/parse_c.rb, line 3641 def dump_initializer(init, scope, r=[CRenderString.new], dep=[]) Statement.dump(init, scope, r << CRenderString.new, dep) end