# NestedRuntimeException constructor

NestedRuntimeException([

1. String? message,
2. Throwable? cause

])

Abstract base class for runtime exceptions that can wrap other exceptions.

This class provides a foundation for creating exception hierarchies where exceptions can contain references to their underlying causes. It's particularly useful for framework-level exceptions that need to preserve the original error context while adding additional information.

### Key Features:

- Maintains a chain of causation through nested exceptions
- Provides root cause analysis capabilities
- Supports exception type checking throughout the chain
- Offers formatted string representation with cause information

### Example:

    class DatabaseException extends NestedRuntimeException {
      DatabaseException(String message, [Throwable? cause]) : super(message, cause);
    }

    // Usage with nested causes
    try {
      // Some database operation
    } catch (e) {
      throw DatabaseException('Failed to save user', e);
    }

    // Analyzing the exception chain
    catch (e) {
      if (e is NestedRuntimeException) {
        print('Root cause: ${e.getRootCause()}');
        print('Most specific: ${e.getMostSpecificCause()}');
      }
    }

## Implementation

    NestedRuntimeException([this.message, this.cause]);