mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[Sema] initial overhaul of isNoncopyable
This implementation has the function execute a request to scan the inheritance clause of non-protocol nominals for a `~Copyable`. For protocols, we look in the requirement signature. This isn't our final state, as the GenericEnvironment needs to be queried in general to determine of a Type is noncopyable. So for now checking for a `~Copyable` only makes sense for Decls.
This commit is contained in:
@@ -4838,7 +4838,7 @@ GenericParameterReferenceInfo ValueDecl::findExistentialSelfReferences(
|
||||
bool TypeDecl::isNoncopyable() const {
|
||||
return evaluateOrDefault(getASTContext().evaluator,
|
||||
IsNoncopyableRequest{const_cast<TypeDecl *>(this)},
|
||||
getAttrs().hasAttribute<MoveOnlyAttr>());
|
||||
true); // default to true for safety
|
||||
}
|
||||
|
||||
Type TypeDecl::getDeclaredInterfaceType() const {
|
||||
|
||||
Reference in New Issue
Block a user