blob: 16b81444e39aac2e0f20d6597db9c6cd9e9830f2 [file] [log] [blame]
//===--- TypeCheckerTypeIDZone.def ------------------------------*- C++ -*-===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
//
// This definition file describes the types in the type checker's
// TypeID zone, for use with the TypeID template.
//
//===----------------------------------------------------------------------===//
SWIFT_REQUEST(TypeChecker, AbstractGenericSignatureRequest,
GenericSignature (GenericSignatureImpl *,
SmallVector<GenericTypeParamType *, 2>,
SmallVector<Requirement, 2>),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, AttachedFunctionBuilderRequest,
CustomAttr *(ValueDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, AttachedPropertyWrapperTypeRequest,
Type(VarDecl *, unsigned), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, AttachedPropertyWrappersRequest,
llvm::TinyPtrVector<CustomAttr *>(VarDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ClassAncestryFlagsRequest,
AncestryFlags(ClassDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, DefaultDefinitionTypeRequest,
Type(AssociatedTypeDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, DefaultTypeRequest,
Type(KnownProtocolKind, const DeclContext *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, EmittedMembersRequest, DeclRange(ClassDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, EnumRawValuesRequest,
bool (EnumDecl *, TypeResolutionStage), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, EnumRawTypeRequest,
Type(EnumDecl *, TypeResolutionStage), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ExistentialConformsToSelfRequest,
bool(ProtocolDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ExistentialTypeSupportedRequest,
bool(ProtocolDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ExtendedTypeRequest, Type(ExtensionDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, FunctionBuilderTypeRequest, Type(ValueDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, FunctionOperatorRequest, OperatorDecl *(FuncDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(NameLookup, GenericSignatureRequest,
GenericSignature (GenericContext *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, InferredGenericSignatureRequest,
GenericSignature (ModuleDecl *, GenericSignatureImpl *,
GenericParamList *,
SmallVector<Requirement, 2>,
SmallVector<TypeLoc, 2>, bool),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, InheritedTypeRequest,
Type(llvm::PointerUnion<TypeDecl *, ExtensionDecl *>, unsigned,
TypeResolutionStage),
SeparatelyCached, HasNearestLocation)
SWIFT_REQUEST(TypeChecker, InitKindRequest,
CtorInitializerKind(ConstructorDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsAccessorTransparentRequest, bool(AccessorDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsDynamicRequest, bool(ValueDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsFinalRequest, bool(ValueDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsGetterMutatingRequest, bool(AbstractStorageDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsImplicitlyUnwrappedOptionalRequest,
bool(ValueDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsObjCRequest, bool(ValueDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsSetterMutatingRequest, bool(AbstractStorageDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, LazyStoragePropertyRequest, VarDecl *(VarDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, MangleLocalTypeDeclRequest,
std::string(const TypeDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, OpaqueReadOwnershipRequest,
OpaqueReadOwnership(AbstractStorageDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, OpaqueResultTypeRequest,
OpaqueTypeDecl *(ValueDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, OperatorPrecedenceGroupRequest,
PrecedenceGroupDecl *(PrecedenceGroupDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, OverriddenDeclsRequest,
llvm::TinyPtrVector<ValueDecl *>(ValueDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, PropertyWrapperBackingPropertyInfoRequest,
PropertyWrapperBackingPropertyInfo(VarDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, PropertyWrapperBackingPropertyTypeRequest,
Type(VarDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, PropertyWrapperMutabilityRequest,
Optional<PropertyWrapperMutability>(VarDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, PropertyWrapperTypeInfoRequest,
PropertyWrapperTypeInfo(NominalTypeDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ProtocolRequiresClassRequest, bool(ProtocolDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, RequirementRequest,
Requirement(WhereClauseOwner, unsigned, TypeResolutionStage),
SeparatelyCached, HasNearestLocation)
SWIFT_REQUEST(TypeChecker, RequirementSignatureRequest,
ArrayRef<Requirement>(ProtocolDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, RequiresOpaqueAccessorsRequest, bool(VarDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, RequiresOpaqueModifyCoroutineRequest,
bool(AbstractStorageDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ResilienceExpansionRequest,
ResilienceExpansion(DeclContext *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, SelfAccessKindRequest, SelfAccessKind(FuncDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, StorageImplInfoRequest,
StorageImplInfo(AbstractStorageDecl *), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, StoredPropertiesAndMissingMembersRequest,
ArrayRef<Decl *>(NominalTypeDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, StoredPropertiesRequest,
ArrayRef<VarDecl *>(NominalTypeDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, StructuralTypeRequest, Type(TypeAliasDecl *), Cached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, SuperclassTypeRequest,
Type(NominalTypeDecl *, TypeResolutionStage), SeparatelyCached,
NoLocationInfo)
SWIFT_REQUEST(TypeChecker, SynthesizeAccessorRequest,
AccessorDecl *(AbstractStorageDecl *, AccessorKind),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, TypeCheckFunctionBodyUntilRequest,
bool(AbstractFunctionDecl *, SourceLoc), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, UnderlyingTypeRequest, Type(TypeAliasDecl *),
SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, USRGenerationRequest, std::string(const ValueDecl *),
Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsABICompatibleOverrideRequest,
bool(ValueDecl *), Cached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, IsStaticRequest,
bool(FuncDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, NeedsNewVTableEntryRequest,
bool(AbstractFunctionDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ParamSpecifierRequest,
ParamDecl::Specifier(ParamDecl *), SeparatelyCached, NoLocationInfo)
SWIFT_REQUEST(TypeChecker, ResultTypeRequest,
Type(ValueDecl *), SeparatelyCached, NoLocationInfo)