BuiltinMacroExpansion.java
package dev.civl.abc.token.common;
import dev.civl.abc.token.IF.CivlcToken;
import dev.civl.abc.token.IF.Formation;
import dev.civl.abc.token.IF.SourceFile;
public class BuiltinMacroExpansion implements Formation {
private CivlcToken macroToken;
public BuiltinMacroExpansion(CivlcToken macroToken) {
assert macroToken != null;
this.macroToken = macroToken;
}
@Override
public String suffix() {
return "expanded from " + macroToken;
}
@Override
public SourceFile getLastFile() {
return macroToken.getSourceFile();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (!(obj instanceof BuiltinMacroExpansion))
return false;
BuiltinMacroExpansion that = (BuiltinMacroExpansion) obj;
if (macroToken == null) {
if (that.macroToken != null)
return false;
} else if (!macroToken.equals(that.macroToken)) {
return false;
}
return true;
}
}