SemanticAdaptationValueConverters.xtend 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package be.uantwerpen.ansymo.semanticadaptation.valueconverter
  2. import org.eclipse.xtext.conversion.impl.AbstractDeclarativeValueConverterService
  3. import org.eclipse.xtext.conversion.ValueConverter
  4. import org.eclipse.xtext.conversion.impl.AbstractLexerBasedConverter
  5. import org.eclipse.xtext.nodemodel.INode
  6. class SemanticAdaptationValueConverters extends AbstractDeclarativeValueConverterService {
  7. @ValueConverter(rule = "PREV")
  8. def PREV() {
  9. return new AbstractLexerBasedConverter<Integer> {
  10. override toValue(String string, INode node) {
  11. return -1
  12. }
  13. };
  14. }
  15. @ValueConverter(rule = "NOW")
  16. def NOW() {
  17. return new AbstractLexerBasedConverter<Integer> {
  18. override toValue(String string, INode node) {
  19. return 0
  20. }
  21. };
  22. }
  23. @ValueConverter(rule = "REALTYPE")
  24. def REALTYPE() {
  25. return new AbstractLexerBasedConverter<Float> {
  26. override toValue(String string, INode node) {
  27. return Float.valueOf(string)
  28. }
  29. };
  30. }
  31. /*@ValueConverter(rule = "AtomicUnity")
  32. def AtomicUnity() {
  33. return new AbstractLexerBasedConverter<Integer> {
  34. override toValue(String string, INode node) {
  35. println(string)
  36. if (string.equals("0")) {
  37. return 1
  38. } else {
  39. return Integer.valueOf(string)
  40. }
  41. }
  42. };
  43. }*/
  44. }