diff options
Diffstat (limited to 'plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java')
-rw-r--r-- | plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java index ec4eea35..fed81868 100644 --- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java +++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/middlend/BackendAstUtil.java @@ -15,6 +15,7 @@ */ package org.eclipse.xpand3.middlend; +import org.eclipse.xpand3.Identifier; import org.eclipse.xpand3.SyntaxElement; import org.eclipse.xtend.backend.common.SourcePos; @@ -31,4 +32,35 @@ public class BackendAstUtil { return new SourcePos(se.getFileName(), se.getFileName(), se.getLine()); } + public static String operationName(Identifier operatorIdentifier) { + String operator = operatorIdentifier.getValue(); + if ("+".equals(operator)) { + return "operatorPlus"; + } else if ("-".equals(operator)) { + return "operatorMinus"; + } else if ("*".equals(operator)) { + return "operatorMult"; + } else if ("/".equals(operator)) { + return "operatorDiv"; + } else if ("%".equals(operator)) { + return "operatorMod"; + } else if ("==".equals(operator)) { + return "operatorEquals"; + } else if ("!=".equals(operator)) { + return "operatorNotEquals"; + } else if ("<".equals(operator)) { + return "operatorLess"; + } else if ("<=".equals(operator)) { + return "operatorLessOrEquals"; + } else if (">".equals(operator)) { + return "operatorGreater"; + } else if (">=".equals(operator)) { + return "operatorGreaterOrEquals"; + } else if ("implies".equals(operator)) { + return "operatorImplies"; + } else if ("!".equals(operator)) { + return "operatorNot"; + } + return null; + } } |