Node transformLabelName(IdentifierToken token) { Node label = newStringNode(Token.LABEL_NAME, token.value); setSourceInfo(label, token); return label; }
Node transformLabelName(IdentifierToken token) { Node label = newStringNode(Token.LABEL_NAME, token.value); setSourceInfo(label, token); return label; }
Node processString(LiteralToken token) { checkArgument(token.type == TokenType.STRING); Node node = newStringNode(Token.STRING, normalizeString(token, false)); setSourceInfo(node, token); return node; }
Node processString(LiteralToken token) { Preconditions.checkArgument(token.type == TokenType.STRING); Node node = newStringNode(Token.STRING, normalizeString(token, false)); setSourceInfo(node, token); return node; }
Node processTypeQuery(TypeQueryTree tree) { Iterator<String> segmentsIt = tree.segments.iterator(); Node node = newStringNode(Token.NAME, segmentsIt.next()); while (segmentsIt.hasNext()) { node = IR.getprop(node, IR.string(segmentsIt.next())); } return cloneProps(new TypeDeclarationNode(Token.TYPEOF, node)); }
Node processTypeQuery(TypeQueryTree tree) { Iterator<String> segmentsIt = tree.segments.iterator(); Node node = newStringNode(Token.NAME, segmentsIt.next()); while (segmentsIt.hasNext()) { node = IR.getprop(node, IR.string(segmentsIt.next())); } return cloneProps(new TypeDeclarationNode(Token.TYPEOF, node)); }
Node processGenericTypeList(GenericTypeListTree tree) { Node list = newNode(Token.GENERIC_TYPE_LIST); for (Map.Entry<IdentifierToken, ParseTree> generic : tree.generics.entrySet()) { Node type = newStringNode(Token.GENERIC_TYPE, generic.getKey().value); ParseTree bound = generic.getValue(); if (bound != null) { type.addChildToBack(transform(bound)); } list.addChildToBack(type); } return list; }
Node processGenericTypeList(GenericTypeListTree tree) { Node list = newNode(Token.GENERIC_TYPE_LIST); for (Map.Entry<IdentifierToken, ParseTree> generic : tree.generics.entrySet()) { Node type = newStringNode(Token.GENERIC_TYPE, generic.getKey().value); ParseTree bound = generic.getValue(); if (bound != null) { type.addChildToBack(transform(bound)); } list.addChildToBack(type); } return list; }
Node processTemplateLiteralToken(LiteralToken token) { Preconditions.checkArgument( token.type == TokenType.NO_SUBSTITUTION_TEMPLATE || token.type == TokenType.TEMPLATE_HEAD || token.type == TokenType.TEMPLATE_MIDDLE || token.type == TokenType.TEMPLATE_TAIL); Node node = newStringNode(normalizeString(token, true)); node.putProp(Node.RAW_STRING_VALUE, token.value); setSourceInfo(node, token); return node; }
Node processTypeAlias(TypeAliasTree tree) { maybeWarnTypeSyntax(tree, Feature.TYPE_ALIAS); Node typeAlias = newStringNode(Token.TYPE_ALIAS, tree.alias.value); typeAlias.addChildToFront(transform(tree.original)); return typeAlias; }
Node processTypeAlias(TypeAliasTree tree) { maybeWarnTypeSyntax(tree, Feature.TYPE_ALIAS); Node typeAlias = newStringNode(Token.TYPE_ALIAS, tree.alias.value); typeAlias.addChildrenToFront(transform(tree.original)); return typeAlias; }
Node processRestParameter(RestParameterTree tree) { maybeWarnEs6Feature(tree, Feature.REST_PARAMETERS); Node name = newStringNode(Token.NAME, tree.identifier.value); setSourceInfo(name, tree.identifier); return newNode(Token.REST, name); }
Node processNameWithInlineJSDoc(IdentifierToken identifierToken) { JSDocInfo info = handleInlineJsDoc(identifierToken); maybeWarnReservedKeyword(identifierToken); Node node = newStringNode(Token.NAME, identifierToken.value); if (info != null) { node.setJSDocInfo(info); } setSourceInfo(node, identifierToken); return node; }
Node processMemberVariable(MemberVariableTree tree) { Node member = newStringNode(Token.MEMBER_VARIABLE_DEF, tree.name.value); maybeProcessType(member, tree.declaredType); member.setStaticMember(tree.isStatic); member.putBooleanProp(Node.OPT_ES6_TYPED, tree.isOptional); maybeProcessAccessibilityModifier(tree, member, tree.access); return member; }
Node processMemberVariable(MemberVariableTree tree) { Node member = newStringNode(Token.MEMBER_VARIABLE_DEF, tree.name.value); maybeProcessType(member, tree.declaredType); member.setStaticMember(tree.isStatic); member.putBooleanProp(Node.OPT_ES6_TYPED, tree.isOptional); maybeProcessAccessibilityModifier(member, tree.access); return member; }
Node transformNumberAsString(LiteralToken token) { double value = normalizeNumber(token); Node irNode = newStringNode(DToA.numberToString(value)); JSDocInfo jsDocInfo = handleJsDoc(token); if (jsDocInfo != null) { irNode.setJSDocInfo(jsDocInfo); } setSourceInfo(irNode, token); return irNode; }
Node transformNumberAsString(LiteralToken token) { double value = normalizeNumber(token); Node irNode = newStringNode(DToA.numberToString(value)); JSDocInfo jsDocInfo = handleJsDoc(token); if (jsDocInfo != null) { irNode.setJSDocInfo(jsDocInfo); } setSourceInfo(irNode, token); return irNode; }
Node processNameWithInlineJSDoc(IdentifierToken identifierToken) { JSDocInfo info = handleInlineJsDoc(identifierToken); maybeWarnReservedKeyword(identifierToken); Node node = newStringNode(Token.NAME, identifierToken.toString()); if (info != null) { node.setJSDocInfo(info); } setSourceInfo(node, identifierToken); return node; }
Node processImportDecl(ImportDeclarationTree tree) { maybeWarnEs6Feature(tree, Feature.MODULES); Node firstChild = transformOrEmpty(tree.defaultBindingIdentifier, tree); Node secondChild = (tree.nameSpaceImportIdentifier != null) ? newStringNode(Token.IMPORT_STAR, tree.nameSpaceImportIdentifier.value) : transformListOrEmpty(Token.IMPORT_SPECS, tree.importSpecifierList); setSourceInfo(secondChild, tree); Node thirdChild = processString(tree.moduleSpecifier); return newNode(Token.IMPORT, firstChild, secondChild, thirdChild); }
Node processSetAccessor(SetAccessorTree tree) { Node key = processObjectLitKeyAsString(tree.propertyName); key.setToken(Token.SETTER_DEF); Node paramList = processFormalParameterList(tree.parameter); setSourceInfo(paramList, tree.parameter); Node body = transform(tree.body); Node dummyName = newStringNode(Token.NAME, ""); setSourceInfo(dummyName, tree.propertyName); Node value = newNode(Token.FUNCTION, dummyName, paramList, body); setSourceInfo(value, tree.body); key.addChildToFront(value); key.setStaticMember(tree.isStatic); return key; }