Skip to content

Expand ITaskItem<T> binding to support arbitrary value types (int, bool, etc.)#13974

Draft
baronfel wants to merge 1 commit into
typed-params/unsupported-type-analyzerfrom
typed-params/value-type-support
Draft

Expand ITaskItem<T> binding to support arbitrary value types (int, bool, etc.)#13974
baronfel wants to merge 1 commit into
typed-params/unsupported-type-analyzerfrom
typed-params/value-type-support

Conversation

@baronfel

@baronfel baronfel commented Jun 5, 2026

Copy link
Copy Markdown
Member

Summary

Expands the ITaskItem engine support introduced in #13971 to handle arbitrary value types (int, bool, long, etc.) in addition to path-like types. Uses ValueTypeParser for consistent parsing and formatting of value types.

Changes

  • IsTaskItemOfT expanded from path-like-only to any IsValueType
  • Tests for ITaskItem scalar and array parameters
  • Tests for ITaskItem output round-tripping

Stacked on

/cc @baronfel

@baronfel baronfel changed the title Expand ITaskItem<T> binding to support any value type T Expand ITaskItem<T> binding to support arbitrary value types (int, bool, etc.) Jun 5, 2026
@baronfel baronfel force-pushed the typed-params/unsupported-type-analyzer branch from 066020c to a06f9e6 Compare June 5, 2026 21:12
@baronfel baronfel force-pushed the typed-params/value-type-support branch from 676b7c9 to 1460831 Compare June 5, 2026 21:13
@baronfel baronfel force-pushed the typed-params/unsupported-type-analyzer branch from a06f9e6 to 7531acb Compare June 5, 2026 21:22
Extends the engine to accept ITaskItem<T> where T is any value type
(int, bool, long, etc.) in addition to path-like types. Uses
ValueTypeParser for parsing and formatting. Also adds corresponding
unit tests for ITaskItem<int> binding.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

# Conflicts:
#	src/Shared/TaskItemTypeHelper.cs
@baronfel baronfel force-pushed the typed-params/value-type-support branch from 1460831 to 2e0738d Compare June 5, 2026 21:27
@baronfel baronfel requested a review from a team June 8, 2026 15:00
@baronfel

baronfel commented Jun 11, 2026

Copy link
Copy Markdown
Member Author

Note: we don't want this to be any value type - consult w/ @rainersigwald on the allowed subset (likely bool, char (??), enum, etc) and consider loosening at a later date.

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