{"id":20610541,"url":"https://github.com/reugn/dynamic","last_synced_at":"2025-09-11T02:32:34.933Z","repository":{"id":48565235,"uuid":"189286677","full_name":"reugn/dynamic","owner":"reugn","description":"A Scala library that allows copying a case class using a dynamic property name","archived":false,"fork":false,"pushed_at":"2021-07-23T05:32:32.000Z","size":21,"stargazers_count":11,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-12T02:51:17.805Z","etag":null,"topics":["case-class","copy","dynamic","lens","lenses","optics","scala","scala-macros"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reugn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-29T19:34:30.000Z","updated_at":"2023-08-14T11:45:53.000Z","dependencies_parsed_at":"2022-09-13T11:01:23.663Z","dependency_job_id":null,"html_url":"https://github.com/reugn/dynamic","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reugn%2Fdynamic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reugn%2Fdynamic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reugn%2Fdynamic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reugn%2Fdynamic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reugn","download_url":"https://codeload.github.com/reugn/dynamic/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249006570,"owners_count":21197299,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["case-class","copy","dynamic","lens","lenses","optics","scala","scala-macros"],"created_at":"2024-11-16T10:17:09.222Z","updated_at":"2025-04-15T04:32:19.696Z","avatar_url":"https://github.com/reugn.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dynamic\n[![Build](https://github.com/reugn/dynamic/actions/workflows/build.yml/badge.svg)](https://github.com/reugn/dynamic/actions/workflows/build.yml)\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.reugn/dynamic_2.12/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.github.reugn/dynamic_2.12/)\n\nA Scala library that allows copying a case class using a dynamic property name.\n\n## Getting started\n`dynamic` is available for the JVM Runtime using Scala 2.12, 2.13.\n\nAdd as a dependency:\n```scala\nlibraryDependencies += \"io.github.reugn\" %% \"dynamic\" % version\n```\n\nBuild from source:\n```sh\nsbt clean +package\n```\n\n## Usage example\n```scala\ncase class Foo(i: Int, s: String)\ncase class Bar(f: Foo, b: Boolean)\ncase class Baz(b: Bar, i1: Int, i2: Int, s2: String)\n\nimport io.github.reugn.dynamic.copy\nval foo = Foo(1, \"str\")\nval bar = Bar(foo, b = false)\nval baz = Baz(bar, 4, 5, \"str2\")\n\nval new_bar = Bar(Foo(10, \"str10\"), b = true)\nval copied_baz = copy(baz, \"b\", new_bar)\ncopied_baz.b shouldBe new_bar\n```\n\n## License\nLicensed under the [Apache 2.0 License](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freugn%2Fdynamic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freugn%2Fdynamic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freugn%2Fdynamic/lists"}