Skip to content

Feat: Bind generic functions and member/extension properties; describe_member - #65

Merged
b-re-w merged 5 commits into
developfrom
work/walker-properties
Oct 3, 2026
Merged

b-re-w merged 5 commits into
developfrom
work/walker-properties

Conversation

@b-re-w

@b-re-w b-re-w commented Oct 3, 2026

Copy link
Copy Markdown
Member

Closes #38
Closes #54

Feature added

Defect fixed (found by coordinator build of the WIP)

  • Receivers with a supertype off the consumer's compile classpath had properties bound, breaking :ksp-fixtures:compose compile → now declined with a reason.
  • Reified inline functions were silently dropped → declined with a reason.
  • A write before any read bypassed the Kotlin setter → proxy __setattr__ attaches the property first.

Test changed: FunctionSlotBindingTest no longer expects the keyed pointerInput overloads to decline (their only reason was the Any? key, which #38 binds); the suspend decline is kept.

Verification (coordinator, each module separately, after merging develop): plugin 209/0, desktopTest 561/0, ksp artifact 35/0, app 70/0, compose 111/0, androidNative compile OK. Red observed without the fix: 2 plugin tests.

b-re-w added 5 commits October 3, 2026 12:02
…nctions as declined, attach properties on first write (#38)

- Member and extension properties on a receiver whose supertype is not on the
  consumer's compile classpath are declined with a reason (kotlinc cannot build
  the member scope).
- A public reified inline function is a declined candidate, not silently dropped.
- The proxy's __setattr__ attaches a Kotlin property before the first write, so a
  write before any read reaches the setter.
- FunctionSlotBindingTest: the keyed pointerInput overloads now bind, since Any?
  crosses as an object handle under #38; the test keeps the suspend decline.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant