MultipleSourceException class
Exception thrown when multiple class definitions with the same name are found.
This occurs when the reflection system encounters classes with identical names from different sources/libraries, making type resolution ambiguous.
{@template multiple_source_exception_usage}
Resolution
Apply the @Source
annotation to disambiguate:
@Source('MyClass', 'package:myapp/my_class.dart')
class MyClass {}
Example
try {
reflector.getClass('User');
} on MultipleSourceException catch (e) {
print('Conflict found: ${e.conflicts}');
// Apply @Source annotation to resolve
}
{@endtemplate}
- Inheritance
-
- Object
- Error
- RuntimeException
- MultipleSourceException
- Available extensions
Constructors
-
MultipleSourceException(String name, List<
String> conflicts) - Creates an exception for multiple class definitions
Properties
- cause → Object?
-
The underlying cause of this exception, if any.
finalinherited
-
conflicts
→ List<
String> -
List of source locations where the class was found
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- message → String
-
The message describing the error.
finalinherited
- name → String
-
The name of the conflicting class
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- stackTrace → StackTrace
-
The associated stack trace.
finalinherited
Methods
-
getCause(
) → Object -
The cause of this exception, if any.
inherited
-
getMessage(
) → String -
The message associated with this exception.
inherited
-
getStackTrace(
) → StackTrace -
The stack trace associated with this exception.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
printStackTrace(
[bool useErrorPrint = false]) → void -
Available on Error, provided by the ErrorExtensions extension
Prints the error along with its stack trace. -
printStackTrace(
[StackTrace? stacktrace, bool useErrorPrint = false]) → void -
Available on Exception, provided by the ExceptionExtensions extension
Prints the exception and optional StackTrace if available. -
printStackTrace(
[bool useErrorPrint = false]) → void -
Available on RuntimeException, provided by the RuntimeExceptionExtensions extension
Extension on RuntimeException to support pretty stack trace printing. -
printStackTrace(
[bool useErrorPrint = false]) → void -
Available on Throwable, provided by the ThrowableExtensions extension
Extension on Throwable to support printing stack traces in a unified way. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited