summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-lower-generic-type.h
blob: f0262dc59a2007703f21a766494fa4e79a6cc287 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// slang-ir-lower-generic-type.h
#pragma once

namespace Slang
{
    struct SharedGenericsLoweringContext;

    /// Lower all references to generic types (ThisType, AssociatedType, etc.) into IRAnyValueType,
    /// and existential types into Tuple<AnyValue, WitnessTable(I), Ptr(RTTIType)>.
    void lowerGenericType(
        SharedGenericsLoweringContext* sharedContext);

}