X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.plugin.core%2Fsrc%2Fnet%2Fmograsim%2Fplugin%2Fasm%2Feditor%2Frules%2FInstructionRule.java;h=df0f80b41a84a073071e347eeb937c8654113331;hb=828e193705aa5216c3b7b26ecaf9bd1d8db38479;hp=948c60ac782492f478a1dfd92379fa2c202b7244;hpb=6903a4007b417f1417a71307f2a7739da7382653;p=Mograsim.git diff --git a/net.mograsim.plugin.core/src/net/mograsim/plugin/asm/editor/rules/InstructionRule.java b/net.mograsim.plugin.core/src/net/mograsim/plugin/asm/editor/rules/InstructionRule.java index 948c60ac..df0f80b4 100644 --- a/net.mograsim.plugin.core/src/net/mograsim/plugin/asm/editor/rules/InstructionRule.java +++ b/net.mograsim.plugin.core/src/net/mograsim/plugin/asm/editor/rules/InstructionRule.java @@ -1,5 +1,6 @@ package net.mograsim.plugin.asm.editor.rules; +import java.util.Objects; import java.util.Set; import org.eclipse.jface.text.rules.IToken; @@ -10,21 +11,24 @@ import net.mograsim.plugin.AsmOps; public class InstructionRule extends WordRule { - public InstructionRule(IToken defaultToken) + private final IToken instToken; + + public InstructionRule(IToken defaultToken, IToken instToken) { - this(defaultToken, false); + this(defaultToken, instToken, false); } - public InstructionRule(IToken defaultToken, boolean ignoreCase) + public InstructionRule(IToken defaultToken, IToken instToken, boolean ignoreCase) { - super(new InstructionDetector(), defaultToken, ignoreCase); + super(new InstructionDetector(), Objects.requireNonNull(defaultToken), ignoreCase); + this.instToken = Objects.requireNonNull(instToken); AsmOps.addListener(this::update); } void update(Set words) { fWords.clear(); - words.forEach(s -> fWords.put(s, fDefaultToken)); + words.forEach(s -> fWords.put(s, instToken)); } static class InstructionDetector implements IWordDetector