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
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