class Metasm::C::Pointer

Attributes

type[RW]

Public Class Methods

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

Public Instance Methods

==(o) click to toggle source
# File metasm/parse_c.rb, line 632
def ==(o)
        o.class == self.class and o.type == self.type
end
align(parser) click to toggle source
# File metasm/parse_c.rb, line 629
def align(parser) BaseType.new(:ptr).align(parser) end
arithmetic?() click to toggle source
# File metasm/parse_c.rb, line 627
def arithmetic? ; true ; end
base() click to toggle source
# File metasm/parse_c.rb, line 628
def base ; @type.base ; end
dump_declarator(decl, scope, r=[''], dep=[]) click to toggle source
# File metasm/parse_c.rb, line 3529
def dump_declarator(decl, scope, r=[''], dep=[])
        d = decl[0]
        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] = '(' << decl[0]
                decl.last << ')'
        end
        @type.dump_declarator(decl, scope, r, dep)
end
pointed() click to toggle source
# File metasm/parse_c.rb, line 630
def pointed ; @type end
pointer?() click to toggle source
# File metasm/parse_c.rb, line 626
def pointer? ; true ; end