Class AbstractDeclaredStatement.ArgumentToString<A>
- java.lang.Object
-
- org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractDeclaredStatement<A>
-
- org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractDeclaredStatement.ArgumentToString<A>
-
- All Implemented Interfaces:
DeclaredStatement<A>
,ModelStatement<A>
- Direct Known Subclasses:
AbstractDeclaredStatement.ArgumentToString.WithSubstatements
- Enclosing class:
- AbstractDeclaredStatement<A>
public abstract static class AbstractDeclaredStatement.ArgumentToString<A> extends AbstractDeclaredStatement<A>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AbstractDeclaredStatement.ArgumentToString.WithSubstatements<A>
-
Nested classes/interfaces inherited from class org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractDeclaredStatement
AbstractDeclaredStatement.ArgumentToString<A>, AbstractDeclaredStatement.WithArgument<A>, AbstractDeclaredStatement.WithQNameArgument, AbstractDeclaredStatement.WithRawArgument<A>, AbstractDeclaredStatement.WithRawStringArgument
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ArgumentToString(A argument)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description @NonNull A
argument()
Returns statement argument.protected static @NonNull Object
maskList(ImmutableList<?> list)
Utility method for squashing singleton lists into single objects.String
rawArgument()
Returns statement argument as was present in original source.protected static <T> @NonNull ImmutableList<T>
unmaskList(@NonNull Object masked, @NonNull Class<T> type)
Utility method for recovering singleton lists squashed bymaskList(ImmutableList)
.-
Methods inherited from class org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractDeclaredStatement
declaredSubstatements, getStatementSource, unmaskList
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement
declaredSubstatements, findFirstDeclaredSubstatement, findFirstDeclaredSubstatementArgument, streamDeclaredSubstatements
-
Methods inherited from interface org.opendaylight.yangtools.yang.model.api.meta.ModelStatement
statementDefinition
-
-
-
-
Constructor Detail
-
ArgumentToString
protected ArgumentToString(A argument)
-
-
Method Detail
-
argument
public final @NonNull A argument()
Description copied from interface:ModelStatement
Returns statement argument.- Returns:
- statement argument or null if statement does not have argument.
-
rawArgument
public final String rawArgument()
Description copied from interface:DeclaredStatement
Returns statement argument as was present in original source.- Returns:
- statement argument as was present in original source or null, if statement does not take argument.
-
maskList
protected static final @NonNull Object maskList(ImmutableList<?> list)
Utility method for squashing singleton lists into single objects. This is a CPU/mem trade-off, which we are usually willing to make: for the cost of an instanceof check we can save one object and re-create it when needed. The inverse operation is #unmaskSubstatements(Object)}.- Parameters:
list
- list to mask- Returns:
- Masked list
- Throws:
NullPointerException
- if list is null
-
unmaskList
protected static final <T> @NonNull ImmutableList<T> unmaskList(@NonNull Object masked, @NonNull Class<T> type)
Utility method for recovering singleton lists squashed bymaskList(ImmutableList)
.- Parameters:
masked
- list to unmask- Returns:
- Unmasked list
- Throws:
NullPointerException
- if any argument is nullClassCastException
- if masked object does not match expected class
-
-