Files
swift-mirror/test/ModuleInterface/moveonly_interface.swift
Kavon Farvardin 99dec9fcd2 Test: finish noncopyable accessor test
rdar://106164128
2024-07-23 08:11:37 -07:00

34 lines
1.1 KiB
Swift

// RUN: %target-swift-emit-module-interface(%t.swiftinterface) %s -module-name test
// RUN: %target-swift-typecheck-module-from-interface(%t.swiftinterface) -module-name test
// RUN: %FileCheck --check-prefix INTERFACE %s < %t.swiftinterface
// RUN: %target-swift-frontend -module-name test -emit-silgen %s -o %t.silgen
// RUN: %FileCheck --check-prefix SILGEN %s < %t.silgen
public class Message { var s: String = "hello" }
public struct FileDescriptor: ~Copyable {
public var x: Int = 0
public var msg: Message = Message()
}
public class FileHandle {
// INTERFACE: public var _stored: test.FileDescriptor
// SILGEN: @_hasStorage @_hasInitialValue public var _stored: FileDescriptor { get set }
public var _stored: FileDescriptor = FileDescriptor()
// INTERFACE: public var file: test.FileDescriptor {
// INTERFACE-NEXT: _read
// INTERFACE-NEXT: _modify
// INTERFACE-NEXT: }
// SILGEN: public var file: FileDescriptor { _read _modify }
public var file: FileDescriptor {
_read { yield _stored }
_modify { yield &_stored }
}
}