byjpr / maprewire Goto Github PK
View Code? Open in Web Editor NEWSyntactic sugar to bulk rekey maps
Home Page: https://hex.pm/packages/map_rewire
License: MIT License
Syntactic sugar to bulk rekey maps
Home Page: https://hex.pm/packages/map_rewire
License: MIT License
Currently MapRewire returns both the original map and the new map. This means we need to create boilerplate to be able to use MapRewire in a pipeline:
def changeset(variant, params) do
variant
|> normalize_data()
|> cast(
params,
~w(shopify_id title price weight compare_at_price requires_shipping sku available image_id option1 option2 option3)
)
end
defp normalize_data(data) do
[_old, new] = data <~> @transforms
new
end
To reduce the amount of boilerplate needed to use MapRewire we should consider creating a normalize_data
function that can be used in a typical changeset:
def changeset(variant, params) do
variant
|> normalize_data(params, @transforms)
|> cast(
params,
~w(shopify_id title price weight compare_at_price requires_shipping sku available image_id option1 option2 option3)
)
end
Release #3 to Hex.pm.
@halostatue, what do you think for version semantics, 0.2.0
?
The current return for map <~> transform
is a list [map, remap]
, but shouldn’t that be a tuple {map, remap}
?
The project could not be analyzed because of maven build errors. Please review the error messages here. Another build will be scheduled within 24 hours. If the build is successful this issue will be closed, otherwise the error message will be updated.
This is an automated GitHub Issue created by Sonatype DepShield. GitHub Apps, including DepShield, can be managed from the Developer settings of the repository administrators.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.