Skip to content

Support explicit positional ordering for arguments (ReplArgument Position) #65

Description

@carldebilly

Context

ReplArgumentAttribute.Position (int?) was removed in PR #63: it was doubly dead — unsettable as an attribute named argument (CS0655, nullable int) AND never consumed by any binding code. Removing it pre-stable avoids shipping a lying API in 0.11.0.

Scope

If explicit positional ordering is wanted, design it properly:

  • a CS0655-safe Position property on ReplArgumentAttribute (non-nullable + PositionOverride tri-state, same pattern as PR fix(parameters): make nullable-enum attribute overrides settable (issue #57 expanded) #63);
  • honor it in HandlerArgumentBinder positional consumption (currently strictly declaration-ordered);
  • registration-time validation (duplicate positions, gaps, collection placement);
  • end-to-end tests for reordered binding, group properties, and diagnostics.

Origin

Flagged during the PR #63 review panel (release triage for 0.11): same defect class as issue #57.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions