mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-20 10:16:37 +00:00
Add importMemory option to asc, see #36
This commit is contained in:
@ -373,7 +373,7 @@ export function serializeAssertionExpression(node: AssertionExpression, sb: stri
|
||||
export function serializeBinaryExpression(node: BinaryExpression, sb: string[]): void {
|
||||
serializeExpression(node.left, sb);
|
||||
sb.push(" ");
|
||||
sb.push(operatorToString(node.operator));
|
||||
sb.push(Token.operatorToString(node.operator));
|
||||
sb.push(" ");
|
||||
serializeExpression(node.right, sb);
|
||||
}
|
||||
@ -613,11 +613,11 @@ export function serializeUnaryExpression(node: UnaryExpression, sb: string[]): v
|
||||
|
||||
export function serializeUnaryPostfixExpression(node: UnaryPostfixExpression, sb: string[]): void {
|
||||
serializeExpression(node.operand, sb);
|
||||
sb.push(operatorToString(node.operator));
|
||||
sb.push(Token.operatorToString(node.operator));
|
||||
}
|
||||
|
||||
export function serializeUnaryPrefixExpression(node: UnaryPrefixExpression, sb: string[]): void {
|
||||
sb.push(operatorToString(node.operator));
|
||||
sb.push(Token.operatorToString(node.operator));
|
||||
serializeExpression(node.operand, sb);
|
||||
}
|
||||
|
||||
@ -1245,60 +1245,6 @@ export function serializeParameter(node: Parameter, sb: string[]): void {
|
||||
|
||||
// helpers
|
||||
|
||||
export function operatorToString(token: Token): string {
|
||||
switch (token) {
|
||||
case Token.DELETE: return "delete";
|
||||
case Token.IN: return "in";
|
||||
case Token.INSTANCEOF: return "instanceof";
|
||||
case Token.NEW: return "new";
|
||||
case Token.TYPEOF: return "typeof";
|
||||
case Token.VOID: return "void";
|
||||
case Token.YIELD: return "yield";
|
||||
case Token.DOT_DOT_DOT: return "...";
|
||||
case Token.COMMA: return ",";
|
||||
case Token.LESSTHAN: return "<";
|
||||
case Token.GREATERTHAN: return ">";
|
||||
case Token.LESSTHAN_EQUALS: return "<=";
|
||||
case Token.GREATERTHAN_EQUALS: return ">=";
|
||||
case Token.EQUALS_EQUALS: return "==";
|
||||
case Token.EXCLAMATION_EQUALS: return "!=";
|
||||
case Token.EQUALS_EQUALS_EQUALS: return "===";
|
||||
case Token.EXCLAMATION_EQUALS_EQUALS: return "!==";
|
||||
case Token.PLUS: return "+";
|
||||
case Token.MINUS: return "-";
|
||||
case Token.ASTERISK_ASTERISK: return "**";
|
||||
case Token.ASTERISK: return "*";
|
||||
case Token.SLASH: return "/";
|
||||
case Token.PERCENT: return "%";
|
||||
case Token.PLUS_PLUS: return "++";
|
||||
case Token.MINUS_MINUS: return "--";
|
||||
case Token.LESSTHAN_LESSTHAN: return "<<";
|
||||
case Token.GREATERTHAN_GREATERTHAN: return ">>";
|
||||
case Token.GREATERTHAN_GREATERTHAN_GREATERTHAN: return ">>>";
|
||||
case Token.AMPERSAND: return "&";
|
||||
case Token.BAR: return "|";
|
||||
case Token.CARET: return "^";
|
||||
case Token.EXCLAMATION: return "!";
|
||||
case Token.TILDE: return "~";
|
||||
case Token.AMPERSAND_AMPERSAND: return "&&";
|
||||
case Token.BAR_BAR: return "||";
|
||||
case Token.EQUALS: return "=";
|
||||
case Token.PLUS_EQUALS: return "+=";
|
||||
case Token.MINUS_EQUALS: return "-=";
|
||||
case Token.ASTERISK_EQUALS: return "*=";
|
||||
case Token.ASTERISK_ASTERISK_EQUALS: return "**=";
|
||||
case Token.SLASH_EQUALS: return "/=";
|
||||
case Token.PERCENT_EQUALS: return "%=";
|
||||
case Token.LESSTHAN_LESSTHAN_EQUALS: return "<<=";
|
||||
case Token.GREATERTHAN_GREATERTHAN_EQUALS: return ">>=";
|
||||
case Token.GREATERTHAN_GREATERTHAN_GREATERTHAN_EQUALS: return ">>>=";
|
||||
case Token.AMPERSAND_EQUALS: return "&=";
|
||||
case Token.BAR_EQUALS: return "|=";
|
||||
case Token.CARET_EQUALS: return "^=";
|
||||
default: assert(false); return "";
|
||||
}
|
||||
}
|
||||
|
||||
export function modifierToString(node: Modifier): string {
|
||||
switch (node.modifierKind) {
|
||||
case ModifierKind.ASYNC: return "async";
|
||||
|
Reference in New Issue
Block a user