Conversation
|
In order to show the e2e developer experience, can we please create a template project that uses these bindings? |
Template PR is here: polywrap/wrap-cli#1867 |
| companion object { | ||
| val uri: Uri = Uri("testimport.uri.eth") | ||
| } | ||
|
|
||
| protected val defaultClient: Invoker by lazy { | ||
| polywrapClient { addDefaults() } | ||
| } | ||
| protected val defaultUri: Uri? = null | ||
| protected val defaultEnv: TestImportEnv? = null |
There was a problem hiding this comment.
As a non Kotlin dev, I am just curious why we aren't using same pattern as other clients where we use constructor and abstract methods that can be extended
There was a problem hiding this comment.
In Kotlin, abstract members can only be in an abstract class. If a user wants to, they can extend the class and override the members defaultClient, defaultUri, and defaultEnv
There was a problem hiding this comment.
I gave these properties the protected access modifier, which makes them visible to this class and also its children. That way they are essentially private, but users who extend the class can still see and override them.
dOrgJelli
left a comment
There was a problem hiding this comment.
This LGTM, we can continue to make improvements to it post-merge via new versions on wrapscan.
No description provided.