mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
AST: GenericContexts store a GenericSignature instead of a GenericEnvironment
This eliminates the entire 'lazy generic environment' concept; essentially, all generic environments are now lazy, and since each signature has exactly one environment, their construction no longer needs to be co-ordinated with deserialization.
This commit is contained in:
@@ -554,11 +554,6 @@ private:
|
||||
void readGenericRequirements(SmallVectorImpl<Requirement> &requirements,
|
||||
llvm::BitstreamCursor &Cursor);
|
||||
|
||||
/// Set up a (potentially lazy) generic environment for the given type,
|
||||
/// function or extension.
|
||||
void configureGenericEnvironment(GenericContext *genericDecl,
|
||||
serialization::GenericSignatureID envID);
|
||||
|
||||
/// Populates the protocol's default witness table.
|
||||
///
|
||||
/// Returns true if there is an error.
|
||||
@@ -789,9 +784,6 @@ public:
|
||||
virtual void finishNormalConformance(NormalProtocolConformance *conformance,
|
||||
uint64_t contextData) override;
|
||||
|
||||
GenericEnvironment *loadGenericEnvironment(const DeclContext *decl,
|
||||
uint64_t contextData) override;
|
||||
|
||||
void
|
||||
loadRequirementSignature(const ProtocolDecl *proto, uint64_t contextData,
|
||||
SmallVectorImpl<Requirement> &requirements) override;
|
||||
|
||||
Reference in New Issue
Block a user