Skip to content
  • Ted Kremenek's avatar
    Add member template 'Type::getAs<T>', which converts a Type* to a respective T*. · e3fb4b65
    Ted Kremenek authored
    This method is intended to eventually replace the individual
    Type::getAsXXXType<> methods.
    
    The motivation behind this change is twofold:
    
    1) Reduce redundant implementations of Type::getAsXXXType() methods. Most of
    them are basically copy-and-paste.
    
    2) By centralizing the implementation of the getAs<Type> logic we can more
    smoothly move over to Doug Gregor's proposed canonical type smart pointer
    scheme.
    
    Along with this patch:
    
    a) Removed 'Type::getAsPointerType()'; now clients use getAs<PointerType>.
    b) Removed 'Type::getAsBlockPointerTypE()'; now clients use getAs<BlockPointerType>.
    
    llvm-svn: 76098
    e3fb4b65
Loading