types.js 783 B

1234567891011121314151617181920212223242526272829303132333435
  1. export const Types = Object.freeze({
  2. INTEGER: "int",
  3. REAL: "real",
  4. STRING: "string",
  5. BOOLEAN: "bool",
  6. VOID: "void",
  7. ARRAY: 'array',
  8. UNDEFINED: 'undefined',
  9. ALL: 'all'
  10. });
  11. export function toInt (str) {
  12. if(str.match('^0b|^0B')) {
  13. return parseInt(str.substring(2), 2);
  14. } else if (str.match('^0x|^0X')) {
  15. return parseInt(str.substring(2), 16);
  16. } else {
  17. return parseInt(str);
  18. }
  19. }
  20. export function toString (str) {
  21. let value = str.replace("\\b", "\b");
  22. value = value.replace("\\t", "\t");
  23. value = value.replace("\\n", "\n");
  24. value = value.replace("\\r", "\r");
  25. value = value.replace("\\\"", "\"");
  26. value = value.replace("\\\'", "\'");
  27. value = value.replace("\\\\", "\\");
  28. return value;
  29. }
  30. export function toBool (str) {
  31. return true;
  32. }