package de.dhbwstuttgart.target.tree.expression;

import de.dhbwstuttgart.target.tree.type.TargetType;

public sealed interface TargetPattern extends TargetExpression permits TargetComplexPattern, TargetExpressionPattern, TargetGuard, TargetTypePattern {
    default String name() {
        return null;
    }

    TargetPattern withType(TargetType type);

    TargetType type();

    TargetPattern withName(String name);
}
