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

Fields

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions