MetaCodable 1.3.0

MetaCodable 1.3.0

Maintained by SwiftyLab.



{"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":".devcontainer","path":".devcontainer","contentType":"directory"},{"name":".github","path":".github","contentType":"directory"},{"name":".vscode","path":".vscode","contentType":"directory"},{"name":"Plugins","path":"Plugins","contentType":"directory"},{"name":"Sources","path":"Sources","contentType":"directory"},{"name":"Tests","path":"Tests","contentType":"directory"},{"name":".gitignore","path":".gitignore","contentType":"file"},{"name":".spi.yml","path":".spi.yml","contentType":"file"},{"name":".swift-format","path":".swift-format","contentType":"file"},{"name":"CHANGELOG.md","path":"CHANGELOG.md","contentType":"file"},{"name":"CODE_OF_CONDUCT.md","path":"CODE_OF_CONDUCT.md","contentType":"file"},{"name":"CONTRIBUTING.md","path":"CONTRIBUTING.md","contentType":"file"},{"name":"LICENSE","path":"LICENSE","contentType":"file"},{"name":"Package.swift","path":"Package.swift","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"package.json","path":"package.json","contentType":"file"}],"totalCount":16}},"fileTreeProcessingTime":7.562611,"foldersToFetch":[],"reducedMotionEnabled":null,"repo":{"id":655068226,"defaultBranch":"main","name":"MetaCodable","ownerLogin":"SwiftyLab","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-17T19:32:29.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/106015847?v=4","public":true,"private":false,"isOrgOwned":true},"symbolsExpanded":false,"treeExpanded":true,"refInfo":{"name":"v1.2.1","listCacheKey":"v0:1706214468.0","canEdit":false,"refType":"tag","currentOid":"a6011c3337f573b04b29b8591b507de7e6e4ed8d"},"path":"README.md","currentUser":null,"blob":{"rawLines":null,"stylingDirectives":null,"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/SwiftyLab/MetaCodable/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null,"repoAlertsPath":"/SwiftyLab/MetaCodable/security/dependabot","repoSecurityAndAnalysisPath":"/SwiftyLab/MetaCodable/settings/security_analysis","repoOwnerIsOrg":true,"currentUserCanAdminRepo":false},"displayName":"README.md","displayUrl":"https://github.com/SwiftyLab/MetaCodable/blob/v1.2.1/README.md?raw=true","headerInfo":{"blobSize":"11.2 KB","deleteInfo":{"deleteTooltip":"You must be signed in to make or propose changes"},"editInfo":{"editTooltip":"You must be signed in to make or propose changes"},"ghDesktopPath":null,"gitLfsPath":null,"onBranch":false,"shortPath":"bcae773","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2FSwiftyLab%2FMetaCodable%2Fblob%2Fv1.2.1%2FREADME.md","isCSV":false,"isRichtext":true,"toc":[{"level":1,"text":"MetaCodable","anchor":"metacodable","htmlText":"MetaCodable"},{"level":2,"text":"Overview","anchor":"overview","htmlText":"Overview"},{"level":2,"text":"Requirements","anchor":"requirements","htmlText":"Requirements"},{"level":2,"text":"Installation","anchor":"installation","htmlText":"Installation"},{"level":3,"text":"Swift Package Manager","anchor":"swift-package-manager","htmlText":"Swift Package Manager"},{"level":2,"text":"Usage","anchor":"usage","htmlText":"Usage"},{"level":2,"text":"Contributing","anchor":"contributing","htmlText":"Contributing"},{"level":2,"text":"License","anchor":"license","htmlText":"License"}],"lineInfo":{"truncatedLoc":"322","truncatedSloc":"248"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplateHelpUrl":"https://docs.github.com/articles/about-issue-and-pull-request-templates","issueTemplate":null,"discussionTemplate":null,"language":"Markdown","languageID":222,"large":false,"loggedIn":false,"newDiscussionPath":"/SwiftyLab/MetaCodable/discussions/new","newIssuePath":"/SwiftyLab/MetaCodable/issues/new","planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/SwiftyLab/MetaCodable/blob/v1.2.1/README.md","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","dismissStackNoticePath":"/settings/dismiss-notice/publish_stack_from_file","releasePath":"/SwiftyLab/MetaCodable/releases/new?marketplace=true","showPublishActionBanner":false,"showPublishStackBanner":false},"rawBlobUrl":"https://github.com/SwiftyLab/MetaCodable/raw/v1.2.1/README.md","renderImageOrRaw":false,"richText":"

MetaCodable

\n

\"API\n\"Swift\n\"Swift\"\n\"Platforms\"\n\"CI/CD\"\n\"CodeFactor\"\n\"codecov\"

\n\n

Supercharge Swift's Codable implementations with macros.

\n

Overview

\n

MetaCodable framework exposes custom macros which can be used to generate dynamic Codable implementations. The core of the framework is Codable() macro which generates the implementation aided by data provided with using other macros.

\n

MetaCodable aims to supercharge your Codable implementations by providing these inbox features:

\n
    \n
  • Allows custom CodingKey value declaration per variable, instead of requiring you to write all the CodingKey values with CodedAt(_:) passing single argument.
  • \n¨C82C\n¨C83C\n¨C84C\n¨C85C\n¨C86C\n¨C87C\n¨C88C\n¨C89C\n¨C90C\n¨C91C\n¨C92C\n
\n

¨C93C.

\n

Requirements

\n¨C94C\n

Installation

\n¨C95C\n

Usage

\n

¨C46C allows to get rid of boiler plate that was often needed in some typical ¨C47C implementations with features like:

\n¨C96C\n¨C97C\n¨C98C\n¨C99C\n¨C100C\n

See the full documentation for ¨C76C and ¨C77C, for API details and advanced use cases.\nAlso, see the limitations.

\n

Contributing

\n

If you wish to contribute a change, suggest any improvements,\nplease review our contribution guide,\ncheck for open issues, if it is already being worked upon\nor open a pull request.

\n

License

\n

¨C78C is released under the MIT license. See LICENSE for details.

\n
","renderedFileInfo":null,"shortPath":null,"tabSize":8,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"repoOwner":"SwiftyLab","repoName":"MetaCodable","showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","showDependabotConfigurationBanner":false,"actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timed_out":false,"not_analyzed":false,"symbols":[{"name":"MetaCodable","kind":"section_1","ident_start":2,"ident_end":13,"extent_start":0,"extent_end":11483,"fully_qualified_name":"MetaCodable","ident_utf16":{"start":{"line_number":0,"utf16_col":2},"end":{"line_number":0,"utf16_col":13}},"extent_utf16":{"start":{"line_number":0,"utf16_col":0},"end":{"line_number":322,"utf16_col":0}}},{"name":"Overview","kind":"section_2","ident_start":1288,"ident_end":1296,"extent_start":1285,"extent_end":3505,"fully_qualified_name":"Overview","ident_utf16":{"start":{"line_number":13,"utf16_col":3},"end":{"line_number":13,"utf16_col":11}},"extent_utf16":{"start":{"line_number":13,"utf16_col":0},"end":{"line_number":35,"utf16_col":0}}},{"name":"Requirements","kind":"section_2","ident_start":3508,"ident_end":3520,"extent_start":3505,"extent_end":3826,"fully_qualified_name":"Requirements","ident_utf16":{"start":{"line_number":35,"utf16_col":3},"end":{"line_number":35,"utf16_col":15}},"extent_utf16":{"start":{"line_number":35,"utf16_col":0},"end":{"line_number":43,"utf16_col":0}}},{"name":"Installation","kind":"section_2","ident_start":3829,"ident_end":3841,"extent_start":3826,"extent_end":4561,"fully_qualified_name":"Installation","ident_utf16":{"start":{"line_number":43,"utf16_col":3},"end":{"line_number":43,"utf16_col":15}},"extent_utf16":{"start":{"line_number":43,"utf16_col":0},"end":{"line_number":64,"utf16_col":0}}},{"name":"Usage","kind":"section_2","ident_start":4564,"ident_end":4569,"extent_start":4561,"extent_end":11066,"fully_qualified_name":"Usage","ident_utf16":{"start":{"line_number":64,"utf16_col":3},"end":{"line_number":64,"utf16_col":8}},"extent_utf16":{"start":{"line_number":64,"utf16_col":0},"end":{"line_number":312,"utf16_col":0}}},{"name":"Contributing","kind":"section_2","ident_start":11069,"ident_end":11081,"extent_start":11066,"extent_end":11386,"fully_qualified_name":"Contributing","ident_utf16":{"start":{"line_number":312,"utf16_col":3},"end":{"line_number":312,"utf16_col":15}},"extent_utf16":{"start":{"line_number":312,"utf16_col":0},"end":{"line_number":319,"utf16_col":0}}},{"name":"License","kind":"section_2","ident_start":11389,"ident_end":11396,"extent_start":11386,"extent_end":11483,"fully_qualified_name":"License","ident_utf16":{"start":{"line_number":319,"utf16_col":3},"end":{"line_number":319,"utf16_col":10}},"extent_utf16":{"start":{"line_number":319,"utf16_col":0},"end":{"line_number":322,"utf16_col":0}}}]}},"copilotInfo":null,"copilotAccessAllowed":false,"csrf_tokens":{"/SwiftyLab/MetaCodable/branches":{"post":"ixRjIqXzuxlzQF5cjM8QG8vgmMOb1ltn8TrRDjFOioD2ew3Mrx8BA0xLZASTImbaO47Cwgdhx8vJaOS9L4Sh4Q"},"/repos/preferences":{"post":"pAaVbkI9O5eZkYOrertMHShGQwlyd5cpxTSBdvd9rXjz2a8poirSO2yZMku72lNA-cLhhR-sSjXEDZM6xd_Wpw"}}},"title":"MetaCodable/README.md at v1.2.1 · SwiftyLab/MetaCodable"}