Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Generalized accessors
Search
Takuma Shimizu
March 27, 2019
Programming
0
82
Generalized accessors
Takuma Shimizu
March 27, 2019
Tweet
Share
More Decks by Takuma Shimizu
See All by Takuma Shimizu
Swift Attributes
hokuron
0
440
Peek in Calendar implementation of swift-foundation
hokuron
0
210
MVVM
hokuron
0
52
Summon Rust from Swift
hokuron
0
690
Opaque Result Type in Swift with Rust
hokuron
0
170
Ownership of Swift as seen from iteration and Rust
hokuron
1
690
Clean Architecture 3
hokuron
0
59
Clean Architecture 2
hokuron
0
77
Create MLで犬と猫の肉球を学習
hokuron
0
100
Other Decks in Programming
See All in Programming
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
460
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
480
Java 25, Nuevas características
czelabueno
0
120
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
130
gunshi
kazupon
1
120
TestingOsaka6_Ozono
o3
0
180
Python札幌 LT資料
t3tra
7
1.1k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
140
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.3k
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
140
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
110
AIコーディングエージェント(Gemini)
kondai24
0
280
Featured
See All Featured
Code Review Best Practice
trishagee
74
19k
Become a Pro
speakerdeck
PRO
31
5.7k
Evolving SEO for Evolving Search Engines
ryanjones
0
77
Scaling GitHub
holman
464
140k
The Curse of the Amulet
leimatthew05
0
4.8k
First, design no harm
axbom
PRO
1
1.1k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
260
End of SEO as We Know It (SMX Advanced Version)
ipullrank
2
3.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The Cult of Friendly URLs
andyhume
79
6.7k
Ethics towards AI in product and experience design
skipperchong
1
140
Transcript
subscrit get set
get let nums = Array(0..<10) let x10 = nums[3] *
10 // `get` print(num) subscript(index: Int) -> Element { get { let element = // `index` return element // } set { ... } }
set var nums = Array(0..<10) let num = nums[3] nums[3]
= num * 10 // `set` print(num) subscript(index: Int) -> Element { get { ... } set(newValue) { // `newValue` // buffer = newValue } }
Swift 4.2 mutableAddressWithPinnedNativeOwner Swift 5 read , modify yield co-routine
read // CoreAudio.swift subscript(index: Index) -> Element { _read {
yield ((_audioBuffersPointer + index).pointee) } } modify // Array.swift subscript(index: Int) -> Element { _modify { let address = _buffer.subscriptBaseAddress + index yield &address.pointee } }
yield subscript(index: Int) -> inout Element {} inout Rust Lifetime
Rust Swift
yield
!