org.opendaylight.yangtools.binding.ExactDataObjectStep Maven / Gradle / Ivy
/*
* Copyright (c) 2024 PANTHEON.tech, s.r.o. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
package org.opendaylight.yangtools.binding;
/**
* A {@link DataObjectStep} which is exactly specified. Due to how {@link DataObject} and {@link KeyAware} are tied
* together, a class generated for a {@code list} is strictly a {@link DataObject}, but its semantics differ.
*
*
* This interface captures two possible outcomes:
*
* - this is a plain {@link NodeStep}
* - this is a fully-specified {@link KeyStep}
*
*
* @param DataObject type
*/
public sealed interface ExactDataObjectStep
extends DataObjectStep, BindingInstanceIdentifier.Step permits KeyStep, NodeStep {
// for class hierarchy only
}