# 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
  - ErrorExtensions
  - ExceptionExtensions
  - RuntimeExceptionExtensions
  - ThrowableExtensions

## Constructors

MultipleSourceException.new(String name, List<String> conflicts)
  Creates an exception for multiple class definitions

## Properties

cause → Object?
  The underlying cause of this exception, if any.
  final inherited
conflicts → List<String>
  List of source locations where the class was found
  final
hashCode → int
  The hash code for this object.
  no setter inherited
message → String
  The message describing the error.
  final inherited
name → String
  The name of the conflicting class
  final
runtimeType → Type
  A representation of the runtime type of the object.
  no setter inherited
stackTrace → StackTrace
  The associated stack trace.
  final inherited

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