ぜのぜ

しりとりしようぜのぜのぜのぜ

67日目

日記

コピペの修正漏れっぽい箇所があってOSSチャンス!と思ったがswift-bookはOSSじゃないっぽい?誰か知ってたら僕の代わりに直してくれ.

今日書いたコード

import Foundation
import _Concurrency

protocol HogeRequirements {
    var hoge: String { get }
}

actor Hoge: HogeRequirements {
    let hoge: String

    init(_ hoge: String) {
        self.hoge = hoge
    }

    convenience init() {
        self.init("hoge")
    }
}

extension Hoge {
    func debug() {
        print("[Hoge] hoge:", hoge)
    }
}

Task {
    let hoge = Hoge()
    print(hoge.hoge)
    print(await hoge.debug())
}

初めて知ったこと

Actorsというやつ.シンタックスハイライトが効いてなくて面白い.その可変なstateには同時に一つのtaskだけがアクセスできる.classと同じく参照型で,プロトコルに準拠することはできるが継承はできない.