The base class for all type management classes. RbGCCXML has a pretty extensive type querying sub-system that allows type matching by names, types, base types, etc

Methods
Public Instance methods
base_type()

Get the base type without any qualifiers. E.g, if you‘ve got the CvQualifiedType "const my_space::MyClass&, this will return the Node for "my_space::MyClass"

returns: Node related to the base C++ construct of this type

    # File lib/rbgccxml/nodes/type.rb, line 23
23:     def base_type
24:       n = NodeCache.find(attributes["type"])
25:       n.is_a?(Type) ? n.base_type : n
26:     end
check_sub_type_without(val, delim)

For types like pointers or references, we recursively track down the base type when doing comparisons.

delim needs to be a regex

    # File lib/rbgccxml/nodes/type.rb, line 12
12:     def check_sub_type_without(val, delim)
13:       return false unless val =~ delim
14:       new_val = val.gsub(delim, "").strip
15:       NodeCache.find(attributes["type"]) == new_valu
16:     end
const?()

Is this type const qualified?

    # File lib/rbgccxml/nodes/type.rb, line 30
30:     def const?
31:       found = NodeCache.find(attributes["type"])
32:       found ? found.const? : false
33:     end