การใช้งานโอเพนซอร์ซของเฟรมเวิร์กรวมของ Apple สำหรับการประมวลผลค่าเมื่อเวลาผ่านไป
เป้าหมายหลักของโครงการนี้คือการใช้งานที่เข้ากันได้เชื่อถือได้และมีประสิทธิภาพซึ่งสามารถใช้กับระบบปฏิบัติการของ Apple ก่อน MacOS 10.15 และ iOS 13 รวมถึง Linux, Windows และ WebAssembly
| สถานะ CI |
|---|
OpenCombine มีเป้าหมายสาธารณะสามประการ ได้แก่ OpenCombine , OpenCombineFoundation และ OpenCombineDispatch (หนึ่งใน Fourth, COpenCombineHelpers ถือเป็นส่วนตัวอย่านำเข้าในโครงการของคุณ)
OpenCombine เองไม่มีการพึ่งพาใด ๆ ไม่แม้แต่จะวางรากฐานหรือจัดส่ง หากคุณต้องการใช้ openCombine กับ dispatch (ตัวอย่างเช่นการใช้ DispatchQueue เป็น Scheduler สำหรับผู้ประกอบการเช่น debounce receive(on:) ฯลฯ ) คุณจะต้องนำเข้าทั้ง OpenCombine และ OpenCombineDispatch เช่นเดียวกับมูลนิธิ: หากคุณต้องการใช้ตัวอย่างเช่นผู้เผยแพร่ NotificationCenter หรือ URLSession คุณจะต้องนำเข้า OpenCombineFoundation ด้วย
หากคุณพัฒนารหัสสำหรับหลายแพลตฟอร์มคุณอาจพบว่าสะดวกในการนำเข้าโมดูล OpenCombineShim แทน มีการส่งออกอย่างมีเงื่อนไขอีกครั้งบนแพลตฟอร์ม Apple (ถ้ามี) และโมดูล openCombine ทั้งหมดบนแพลตฟอร์มอื่น ๆ คุณสามารถนำเข้า OpenCombineShim เฉพาะเมื่อใช้ SwiftPM ปัจจุบันยังไม่สามารถใช้งานได้สำหรับ cocoapods
ในการเพิ่ม OpenCombine ลงในแพ็คเกจ SwiftPM ของคุณเพิ่มแพ็คเกจ OpenCombine ลงในรายการแพ็คเกจและการพึ่งพาเป้าหมายในไฟล์ Package.swift ของคุณ ปัจจุบันผลิตภัณฑ์ OpenCombineDispatch และ OpenCombineFoundation ยังไม่รองรับ WebAssembly หากโครงการของคุณกำหนดเป้าหมายไปที่ WebAssembly โดยเฉพาะคุณควรละเว้นจากรายการการพึ่งพาของคุณ หากมีเป้าหมายหลายแพลตฟอร์มรวมถึง WebAssembly ขึ้นอยู่กับพวกเขาเฉพาะบนแพลตฟอร์มที่ไม่ใช่ Webassembly ที่มีการพึ่งพาเป้าหมายตามเงื่อนไข
dependencies: [
. package ( url : " https://github.com/OpenCombine/OpenCombine.git " , from : " 0.14.0 " )
] ,
targets: [
. target (
name : " MyAwesomePackage " ,
dependencies : [
" OpenCombine " ,
. product ( name : " OpenCombineFoundation " , package : " OpenCombine " ) ,
. product ( name : " OpenCombineDispatch " , package : " OpenCombine " )
]
) ,
] OpenCombine ยังสามารถเพิ่มการพึ่งพา SWIFTPM โดยตรงในโครงการ XCODE ของคุณ (ต้องใช้ XCODE 11 ขึ้นไป)
ในการทำเช่นนั้นให้เปิด Xcode, ใช้ ไฟล์ → แพ็คเกจ Swift → เพิ่มการพึ่งพาแพ็คเกจ ... , ป้อน URL ที่เก็บข้อมูลเลือกเวอร์ชันล่าสุดที่มีอยู่และเปิดใช้งานช่องทำเครื่องหมาย:

ในการเพิ่ม OpenCombine ลงในโครงการโดยใช้ cocoapods ให้เพิ่ม OpenCombine และ OpenCombineDispatch ลงในรายการการพึ่งพาเป้าหมายใน Podfile ของคุณ
pod 'OpenCombine' , '~> 0.14.0'
pod 'OpenCombineDispatch' , '~> 0.14.0'
pod 'OpenCombineFoundation' , '~> 0.14.0' ไฟล์ opencombine_lldb.py กำหนดสรุปประเภท lldb บางส่วนเพื่อการดีบักที่ง่ายขึ้น สรุปประเภทเหล่านี้ปรับปรุงวิธี lldb และ XCode แสดงค่า openCombine บางอย่าง
หากต้องการใช้ opencombine_lldb.py ให้หาเส้นทางเต็มรูปแบบ สมมติว่าเส้นทางเต็มคือ ~/projects/OpenCombine/opencombine_lldb.py จากนั้นคำสั่งต่อไปนี้ไปยังไฟล์ ~/.lldbinit ของคุณ:
command script import ~/projects/OpenCombine/opencombine_lldb.py
ปัจจุบัน opencombine_lldb.py กำหนดประเภทสรุปสำหรับประเภทเหล่านี้:
Subscribers.Demandดูการสนับสนุน.