Skip to content

Conversation

@ejrgilbert
Copy link
Collaborator

@ejrgilbert ejrgilbert commented Dec 30, 2025

Core Functionality

Fix workarounds

  • Right now, I just assume that CanonicalFunction::Resource* creates a new core function, this isn't necessarily the case. Whether it's a core function or a component function is determined by how it's referenced. The (core func ... (canon resource.drop ...)) is syntax output by the printer to show that a core function is generated for the component function on instantiation and given an ID. I need to figure out how to identify this in my own IR since I need to know IDs at instrumentation time.

Testing

  • Add test for performance benchmark
  • Add test for memory benchmark

Usability

  • Document lookup decisions in comments
    - Also, add the docsrs configuration for enabling all features when it actually runs, so you'll always be able to see documentation for your new feature going forward
    - Use cargo doc --document-private-items to document, code for doing this in docs.rs upon publish:
#+BEGIN_SRC toml
[package.metadata.docs.rs]
rustdoc-args = ["--document-private-items"]
#+END_SRC
  • Should I have a fast path for encoding uninstrumented components?
  • Should I have a feature flag for encoding instrumented components?
    - A new feature flag may be ideal to ensure no downstream impact
    - Ensure default feature flags (default = [])
    - Hide/optionally include new deps that may be required (your-new-feature = ['dep:some-new-dep', ...])

…o the type of the item inside the component)
@ejrgilbert ejrgilbert changed the title Feature/support components Support instrumenting components! Dec 30, 2025
@ejrgilbert ejrgilbert force-pushed the feature/support-components branch from 9593884 to 46ae8d8 Compare December 30, 2025 21:17
@ejrgilbert ejrgilbert self-assigned this Jan 9, 2026
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.

2 participants