class FFI::Clang::TranslationUnit::ResourceUsage

Public Class Methods

name(kind) click to toggle source
# File lib/ffi/clang/translation_unit.rb, line 150
def self.name(kind)
        Lib.resource_usage_name(kind)
end
new(resource_usage) click to toggle source
Calls superclass method
# File lib/ffi/clang/translation_unit.rb, line 137
def initialize(resource_usage)
        # CXResourceUsage is returned by value and should be freed explicitly.
        # Get FFI::pointer of the data so that the data is handled by AutoPointer.
        pointer = FFI::Pointer.new(resource_usage.to_ptr)
        super(pointer)
        @resource_usage = resource_usage
end
release(pointer) click to toggle source
# File lib/ffi/clang/translation_unit.rb, line 145
def self.release(pointer)
        # clang_disposeCXTUResourceUsage requires value type, so create it by pointer
        Lib.dispose_resource_usage(Lib::CXTUResourceUsage.new(pointer))
end

Public Instance Methods

entries() click to toggle source
# File lib/ffi/clang/translation_unit.rb, line 154
def entries
        ary = []
        ptr = @resource_usage[:entries]
        @resource_usage[:numEntries].times {
                ary << Lib::CXTUResourceUsageEntry.new(ptr)
                ptr += Lib::CXTUResourceUsageEntry.size
        }
        ary
end