Publishers.TryCompactMap

μ œλ„€λ¦­ ꡬ쑰체 | 받은 각각의 μš”μ†Œμ— λŒ€ν•˜μ—¬ μ—λŸ¬λ₯Ό λ˜μ§€λŠ” ν΄λ‘œμ €λ₯Ό ν˜ΈμΆœν•˜μ—¬ nil이 μ•„λ‹Œ κ²°κ³Όλ₯Ό λ‹€μ‹œ λ°œν–‰ν•˜λŠ” Publisher

μ΄λ‹ˆμ…œλΌμ΄μ €λŠ” 두 개의 인자λ₯Ό λ°›λŠ”λ‹€.

  • upstream : μƒμœ„μ— 흐λ₯΄λŠ” Publisher

  • transform : μƒμœ„μ— 흐λ₯΄λŠ” Publisherλ‘œλΆ€ν„° 값을 λ°›κ³  μ˜΅μ…”λ„ 값을 λ°˜ν™˜ν•˜λŠ” μ—λŸ¬λ₯Ό λ˜μ§€λŠ” ν΄λ‘œμ €

μ‹œν€€μŠ€μ—μ„œ nil 값을 μ—†μ• λŠ” λ“±μ˜ μž‘μ—…μ„ ν•˜κ³  μ‹ΆμœΌλ©° μž‘μ—…μ΄ μ—λŸ¬λ₯Ό 던질 수 μžˆμ„ λ•Œ μ‚¬μš©ν•  수 μžˆλ‹€.

tryCompactMap μ˜€νΌλ ˆμ΄ν„°μ™€ 관련이 μžˆλ‹€.

Publishers.CompactMap의 λ™μž‘κ³Ό κ°™μœΌλ‚˜ λ™μž‘μ„ μˆ˜ν–‰ν•˜λ‹€κ°€ μ—λŸ¬λ₯Ό λ‚Ό 수 μžˆλ‹€λŠ” 차이가 μžˆλ‹€.

RxSwift

compactMap μ˜€νΌλ ˆμ΄ν„°λ₯Ό μ‚¬μš©ν•˜μ—¬ κ΅¬ν˜„ν•  수 μžˆλ‹€.

ReactiveSwift

ν•΄λ‹Ή λ™μž‘μ„ κ΅¬ν˜„ν•˜κΈ° μœ„ν•œ μ˜€νΌλ ˆμ΄ν„°λ₯Ό μ œκ³΅ν•˜μ§€ μ•ŠλŠ”λ‹€.

μ°Έκ³ 

Publishers.CompactMap

Last updated