Skip to content

Rename Typed-prefixed selector and extractor APIs#28

Closed
blackopsrepl wants to merge 1 commit intomainfrom
codex/explore-typed-contracts-for-unification
Closed

Rename Typed-prefixed selector and extractor APIs#28
blackopsrepl wants to merge 1 commit intomainfrom
codex/explore-typed-contracts-for-unification

Conversation

@blackopsrepl
Copy link
Copy Markdown
Collaborator

Motivation

  • Remove redundant Typed* prefixes and provide a unified, neutral public API surface for extractors and selectors.
  • Preserve the existing zero-erasure, monomorphized design while eliminating cargo‑cult wrapper names that add cognitive overhead.

Description

  • Renamed the concrete extractor type TypedEntityExtractor<S,E> to EntityCollectionExtractor<S,E> and updated its impl, Debug name, and all call sites and re-exports.
  • Replaced the typed value selector APIs with neutral names: TypedValueSelector -> ValueSelector, StaticTypedValueSelector -> StaticValueSelector, and FromSolutionTypedValueSelector -> FromSolutionValueSelector, and updated implementations and tests accordingly.
  • Renamed selector modules/files to neutral names: typed_move_selector.rs -> move_selector.rs and typed_value.rs -> value_selector.rs, and updated all imports/uses throughout the solver crate.
  • Updated the derive macro emission to use EntityCollectionExtractor and synced the __internal facade re-exports and WIREFRAME.md files across core, macros, scoring, solver, and the top-level facade to reflect the new public surface.

Testing

  • Ran cargo fmt to normalize formatting and make build to compile the full workspace; the build completed successfully.
  • Ran the full test suite via make test (workspace-level); all unit and doc tests completed successfully and returned green.
  • Updated and exercised selector/extractor unit tests that reference the renamed types; those tests passed as part of the full test run.

Codex Task

@blackopsrepl
Copy link
Copy Markdown
Collaborator Author

Superseded by #31, which rebases the rename onto release/0.7.0 and folds in the audit intent from the draft docs branches.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant