f3127c4890c9a6d1afbfa9d1be73f425ffbf8a04
[mdsal.git] / binding / mdsal-binding-generator / src / main / java / org / opendaylight / mdsal / binding / generator / impl / tree / StatementRepresentation.java
1 /*
2  * Copyright (c) 2022 PANTHEON.tech, s.r.o. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.mdsal.binding.generator.impl.tree;
9
10 import org.eclipse.jdt.annotation.NonNull;
11 import org.opendaylight.mdsal.binding.runtime.api.RuntimeType;
12 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
13
14 /**
15  * An object representing a view on a particular {@link EffectiveStatement} with a potential to have a
16  * {@link RuntimeType} representation as well.
17  *
18  * @param <S> Statement type
19  * @param <R> Runtime type
20  */
21 public interface StatementRepresentation<S extends EffectiveStatement<?, ?>> {
22     /**
23      * Return the effective YANG statement being represented by this object.
24      *
25      * @return A YANG statement
26      */
27     @NonNull S statement();
28 }