Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Generalized accessors
Search
Takuma Shimizu
March 27, 2019
Programming
0
57
Generalized accessors
Takuma Shimizu
March 27, 2019
Tweet
Share
More Decks by Takuma Shimizu
See All by Takuma Shimizu
Swift Attributes
hokuron
0
330
Peek in Calendar implementation of swift-foundation
hokuron
0
130
MVVM
hokuron
0
33
Summon Rust from Swift
hokuron
0
590
Opaque Result Type in Swift with Rust
hokuron
0
120
Ownership of Swift as seen from iteration and Rust
hokuron
1
600
Clean Architecture 3
hokuron
0
24
Clean Architecture 2
hokuron
0
46
Create MLで犬と猫の肉球を学習
hokuron
0
77
Other Decks in Programming
See All in Programming
Kubernetes上でOracle_Databaseの運用を楽にするOraOperatorの紹介
nnaka2992
0
170
2024-10-01 dev2next - Observability for Modern JVM Applications
jonatan_ivanov
1
140
App Store Connect APIで 作業時間を増やそう
mot_techtalk
3
130
Why I Choose NetBeans for Jakarta EE
ivargrimstad
0
740
Kotlin Multiplatform at Stable and Beyond (Kotlin Vienna, October 2024)
zsmb
2
410
文化が生産性を作る
jimpei
3
610
Повторное использование кода в ML: почему ML-пайплайны могут помочь?
lamodatech
0
370
Micro Frontends for Java Microservices - dev2next 2024
mraible
PRO
0
230
LangChain & LangServeでAPIを爆速作成
kijitorabuti
2
350
フロントエンドの現在地とこれから
koba04
10
4.6k
デバッグの話 / Debugging for Beginners
kaityo256
PRO
8
720
NEWTにおけるiOS18対応の進め方
ryu1sazae
0
330
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
228
52k
Agile that works and the tools we love
rasmusluckow
327
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Speed Design
sergeychernyshev
23
540
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
105
48k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
43
6.5k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Optimizing for Happiness
mojombo
375
69k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
The World Runs on Bad Software
bkeepers
PRO
65
11k
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
!