invoke
operator fun <Parent : Resource, Child : DynamicResource<Parent>> Child.invoke(id: String): DynamicResource.Identified<Parent, Child>(source)
Binds a specific identifier into a DynamicResource's slug.
This operator is part of the syntax for constructing instances of ResolvedResource.
object Api : RootResource("v1") {
object Users : StaticResource<Api>("users", Api) {
object User : DynamicResource<Users>("user", Users) {
object Favorites : StaticResource<User>("favorites", User) {
object Favorite : DynamicResource<Favorites>("favorite", Favorites)
}
}
}
}Content copied to clipboard
To refer to the above resources:
| Desired path | Kotlin code |
|---|---|
"v1" | Api.resolved (the root resource is special, see resolved) |
"v1/users" | Api / Users |
"v1/users/1234" | Api / Users / User("1234") |
"v1/users/1234/favorites" | Api / Users / User("1234") / Favorites |
"v1/users/1234/favorites/789" | Api / Users / User("1234") / Favorites / Favorite("789") |