package org.reasm.m68k.assembly.internal;
import javax.annotation.Nonnull;
import javax.annotation.concurrent.Immutable;
import org.reasm.m68k.messages.EndnsWithoutNamespaceErrorMessage;
import org.reasm.m68k.source.NamespaceBlock;
/**
* The <code>ENDNS</code> directive.
*
* @author Francis Gagné
*/
@Immutable
class EndnsDirective extends Mnemonic {
@Nonnull
static final EndnsDirective ENDNS = new EndnsDirective();
private EndnsDirective() {
}
@Override
void assemble(M68KAssemblyContext context) {
context.sizeNotAllowed();
context.requireNumberOfOperands(0);
if (!(context.getParentNode() instanceof NamespaceBlock)) {
context.addMessage(new EndnsWithoutNamespaceErrorMessage());
}
}
}