diff options
author | Chris Lattner <sabre@nondot.org> | 2012-01-26 00:06:44 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2012-01-26 00:06:44 +0000 |
commit | 27984e67f7958c83e69aa15859d29867c46097a9 (patch) | |
tree | e12815f35babffa7da05e4ec47f641cc3b94ec00 | |
parent | 6e3abaa77f916341ed000b1a3883aec563967a88 (diff) | |
download | llvm-27984e67f7958c83e69aa15859d29867c46097a9.tar.gz llvm-27984e67f7958c83e69aa15859d29867c46097a9.tar.bz2 llvm-27984e67f7958c83e69aa15859d29867c46097a9.tar.xz |
add StructType helpers too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149000 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Type.h | 5 | ||||
-rw-r--r-- | lib/VMCore/Type.cpp | 14 |
2 files changed, 18 insertions, 1 deletions
diff --git a/include/llvm/Type.h b/include/llvm/Type.h index d3b2f1383f..185258d8ff 100644 --- a/include/llvm/Type.h +++ b/include/llvm/Type.h @@ -26,6 +26,7 @@ class raw_ostream; class Module; class LLVMContext; class LLVMContextImpl; +class StringRef; template<class GraphType> struct GraphTraits; /// The instances of the Type class are immutable: once they are created, @@ -327,7 +328,9 @@ public: unsigned getFunctionNumParams() const; bool isFunctionVarArg() const; - // TODO: StructType + StringRef getStructName() const; + unsigned getStructNumElements() const; + Type *getStructElementType(unsigned N) const; Type *getSequentialElementType() const; diff --git a/lib/VMCore/Type.cpp b/lib/VMCore/Type.cpp index 627f6452c6..f5c88ccd38 100644 --- a/lib/VMCore/Type.cpp +++ b/lib/VMCore/Type.cpp @@ -217,6 +217,20 @@ unsigned Type::getFunctionNumParams() const { return cast<FunctionType>(this)->getNumParams(); } +StringRef Type::getStructName() const { + return cast<StructType>(this)->getName(); +} + +unsigned Type::getStructNumElements() const { + return cast<StructType>(this)->getNumElements(); +} + +Type *Type::getStructElementType(unsigned N) const { + return cast<StructType>(this)->getElementType(N); +} + + + Type *Type::getSequentialElementType() const { return cast<SequentialType>(this)->getElementType(); } |