diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/Wrap.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/Wrap.xcscheme new file mode 100644 index 0000000..b8387e7 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/Wrap.xcscheme @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Sources/Wrap/Wrap.swift b/Sources/Wrap/Wrap.swift index 842c0f9..7257303 100644 --- a/Sources/Wrap/Wrap.swift +++ b/Sources/Wrap/Wrap.swift @@ -1,4 +1,8 @@ +precedencegroup Wrap { + +} + postfix operator &> infix operator <& diff --git a/Tests/WrapTests/File.swift b/Tests/WrapTests/File.swift index 6ea87a2..459343e 100644 --- a/Tests/WrapTests/File.swift +++ b/Tests/WrapTests/File.swift @@ -16,4 +16,35 @@ final class WrapTests: XCTestCase { value <& { $0 += 1 } XCTAssertEqual(value, 43) } + + func testOptional() { + + var optional: Int? = 42 + + optional&>.do { + print($0) + } + + optional?&>.do { + print($0) + } + + do { + + var container: Container? = .init(value: 42) + + container?.value&>.do { + print($0) + } + + } + + } + + struct Container { + + var value: Int + + + } }