Comments (6)
Looks rad!
- Your
mapJSON
function looks super similar to our globaldecode
functions that are currently onmaster
and will be shipped with 1.0. - I'm a huge fan of the idea of RAC extensions for Argo. I don't think we'd want to include them in Argo proper, but I'd be really interested in a library that just did that
- Default extensions for common types like
NSURL
are something we've talked about a lot internally. I think we decided against including them in Argo itself, because there are plenty of cases where you'd want to customize that decoding, and we didn't want to add a roadblock to users wanting to do that. But I think shipping those extensions with an external lib is a fantastic idea (and I'd probably use it)
Have you thought about breaking the NSURL
/CLLocation
stuff out away from the RAC
extensions? I'm a huge fan of small micro-frameworks.
I'd love to see more of these kinds of libraries. If they start to show up, We should look at creating some sort of centralized list of helper libs.
from argo.
Gordon, thanks for your quick feedback.
- Oh, I haven't been aware that
decode
already made it to master, once 1.0 is out, mymapJSON
functions are probably not needed any more. - I am also a huge fan of small micro-frameworks! I updated the repo, kept the RAC extensions in Argonaut and created a new micro-framework for common types called GoldenFleece (that's what the Argonauts were looking for after all ⛵️).
My biggest issue for providing a framework for common types is that its basically "all or nothing" and I don't think there is a way to work around that limitation (i.e. override the extension?). I think it should be possible with CocoaPods subspecs, but I am not aware of a way to currently achieve something similar with Carthage.
I know GoldenFleece is just a small start, but I'd love to see some active contributions for other types as well. ⚡️
from argo.
Solid naming.
I am not aware of a way to currently achieve something similar with Carthage.
You could have multiple frameworks in your Xcode project, one for each type, and then an umbrella framework that brings in all of them. That might be a cool experiment.
I know GoldenFleece is just a small start, but I'd love to see some active contributions for other types as well.
+1
from argo.
Love that name!
from argo.
You could have multiple frameworks in your Xcode project, one for each type, and then an umbrella framework that brings in all of them. That might be a cool experiment.
Yes, I think that's the way to go. 👍
from argo.
Going to close this for now. Feel free to reopen or open a new issue if you have more questions.
from argo.
Related Issues (20)
- error: no such module 'Runes' HOT 7
- Problem with Decodable on xcode 9 HOT 3
- RFC: Renaming the Decodable protocol
- How to decode a "Dictionary" to "[Model]"? HOT 3
- Parse nested array failed HOT 5
- Parse nested model fails when adding a specific key HOT 2
- How to decode dynamic keys HOT 2
- RFC: Renaming (or removing) the `<|` family of operators HOT 5
- Decode type 'Any' HOT 2
- RFC: Make Swift.Decodable conform to Argo.Decodable in Swift 4.1 HOT 4
- Convert all wrong type return JSON to specific type HOT 6
- Decoding the same object with different keys HOT 6
- How to parse an empty dictionary object in Argo HOT 1
- [Question] Array decoding HOT 4
- Using pure can't compile using Swift 3 HOT 2
- Decodable' is ambiguous for type lookup in this context (Swift4) HOT 1
- Parsing a json array with strings and objects intermixed HOT 2
- Xcode 11.0 compatibility issue HOT 3
- Xcode 11.2.1 Binary operator '<^>' cannot be applied to operands of type HOT 7
- Upgrade to version 5.0.0 blocked due to Ogra library HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from argo.