import org.opendaylight.yangtools.yang.model.api.stmt.DefaultEffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.DefaultStatement;
import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.BaseStringStatementSupport;
+import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
@Override
protected DefaultStatement createDeclared(final StmtContext<String, DefaultStatement, ?> ctx,
final ImmutableList<? extends DeclaredStatement<?>> substatements) {
- return new RegularDefaultStatement(ctx.coerceRawStatementArgument(), substatements);
+ return new RegularDefaultStatement(ctx.getRawArgument(), substatements);
}
@Override
protected DefaultStatement createEmptyDeclared(final StmtContext<String, DefaultStatement, ?> ctx) {
- return new EmptyDefaultStatement(ctx.coerceRawStatementArgument());
+ return new EmptyDefaultStatement(ctx.getRawArgument());
}
@Override
- protected DefaultEffectiveStatement createEffective(
- final StmtContext<String, DefaultStatement, DefaultEffectiveStatement> ctx,
- final DefaultStatement declared, final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
- return new RegularDefaultEffectiveStatement(declared, substatements);
- }
-
- @Override
- protected DefaultEffectiveStatement createEmptyEffective(
- final StmtContext<String, DefaultStatement, DefaultEffectiveStatement> ctx,
- final DefaultStatement declared) {
- return new EmptyDefaultEffectiveStatement(declared);
+ protected DefaultEffectiveStatement createEffective(final Current<String, DefaultStatement> stmt,
+ final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
+ return substatements.isEmpty() ? new EmptyDefaultEffectiveStatement(stmt.declared())
+ : new RegularDefaultEffectiveStatement(stmt.declared(), substatements);
}
}
\ No newline at end of file