class Metasm::C::Pointer

Attributes

type[RW]

Public Class Methods

new(type=nil) click to toggle source
# File metasm/parse_c.rb, line 633
def initialize(type=nil)
        @type = type
end

Public Instance Methods

==(o) click to toggle source
# File metasm/parse_c.rb, line 643
def ==(o)
        o.class == self.class and o.type == self.type
end
align(parser) click to toggle source
# File metasm/parse_c.rb, line 640
def align(parser) BaseType.new(:ptr).align(parser) end
arithmetic?() click to toggle source
# File metasm/parse_c.rb, line 638
def arithmetic? ; true ; end
base() click to toggle source
# File metasm/parse_c.rb, line 639
def base ; @type.base ; end
dump_declarator(decl, scope, r=[CRenderString.new], dep=[]) click to toggle source
# File metasm/parse_c.rb, line 3577
def dump_declarator(decl, scope, r=[CRenderString.new], dep=[])
        d = decl[0]
        decl[0] = CRenderString.new
        decl[0] << '*'
        decl[0] << ' ' << @qualifier.map { |q| q.to_s }.join(' ') << ' ' if qualifier
        decl[0] << d
        if @type.kind_of?(Function) or @type.kind_of?(Array)
                decl[0] = CRenderString.new << '(' << decl[0]
                decl.last << ')'
        end
        @type.dump_declarator(decl, scope, r, dep)
end
pointed() click to toggle source
# File metasm/parse_c.rb, line 641
def pointed ; @type end
pointer?() click to toggle source
# File metasm/parse_c.rb, line 637
def pointer? ; true ; end