diff options
Diffstat (limited to 'source/slang/type-layout.cpp')
| -rw-r--r-- | source/slang/type-layout.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/slang/type-layout.cpp b/source/slang/type-layout.cpp index 8fc48fe4f..2d21d7aef 100644 --- a/source/slang/type-layout.cpp +++ b/source/slang/type-layout.cpp @@ -2276,6 +2276,17 @@ RefPtr<TypeLayout> CreateTypeLayout( return typeLayout; } +RefPtr<TypeLayout> TypeLayout::unwrapArray() +{ + TypeLayout* typeLayout = this; + + while(auto arrayTypeLayout = dynamic_cast<ArrayTypeLayout*>(typeLayout)) + typeLayout = arrayTypeLayout->elementTypeLayout; + + return typeLayout; +} + + RefPtr<GlobalGenericParamDecl> GenericParamTypeLayout::getGlobalGenericParamDecl() { auto declRefType = type->AsDeclRefType(); |
