ExecutableHolder class final
Executable Holder
Extends ArgumentValueHolder with metadata about the
Executable being invoked.
Purpose
- Couples argument data with the specific executable (constructor, method, or function) to be called.
- Allows reflection-based frameworks to:
- Inspect and validate executable signatures.
- Invoke the executable with properly structured arguments.
- Support DI wiring for constructors and annotated methods.
Behavior
- Stores an
Executableinstance representing the reflective target. - Inherits argument storage (namedArgs, positionalArgs, arguments) from ArgumentValueHolder.
Example
final execHolder = ExecutableHolder(
executable: someConstructor,
positionalArgs: [42, "example"],
);
print(execHolder.executable.name); // Constructor or method name
print(execHolder.positionalArgs); // [42, "example"]
Notes
- Designed for internal framework use during pod instantiation.
- Works together with
DependencyObjectFactoryand reflection utilities.
- Inheritance
-
- Object
- ArgumentValueHolder
- ExecutableHolder
Constructors
-
ExecutableHolder({required Executable executable, Map<
String, Object?> namedArgs = const {}, List<Object?> positionalArgs = const [], List<ArgumentValue> arguments = const []}) - Executable Holder
Properties
-
arguments
→ List<
ArgumentValue> -
Normalized argument list, where each argument is wrapped in
an ArgumentValue abstraction.
finalinherited
- executable → Executable
-
The reflective executable (constructor, method, or function)
associated with these arguments.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
-
namedArgs
→ Map<
String, Object?> -
Named arguments passed to the executable.
finalinherited
-
positionalArgs
→ List<
Object?> -
Positional arguments passed to the executable.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited