type github.com/evanw/esbuild/internal/js_ast.EIdentifier

173 uses

	github.com/evanw/esbuild/internal/js_ast (current package)
		js_ast.go#L508: type EIdentifier struct {
		js_ast.go#L663: func (*EIdentifier) isExpr()        {}

	github.com/evanw/esbuild/internal/bundler
		linker.go#L1430: 				Target:  js_ast.Expr{Loc: lazy.Value.Loc, Data: &js_ast.EIdentifier{Ref: repr.ast.ModuleRef}},
		linker.go#L1502: 				clone.Properties[i].Value = &js_ast.Expr{Loc: property.Key.Loc, Data: &js_ast.EIdentifier{Ref: export.ref}}
		linker.go#L1620: 			value = js_ast.Expr{Data: &js_ast.EIdentifier{Ref: export.ref}}
		linker.go#L1704: 			Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: markAsModuleRef}},
		linker.go#L1705: 			Args:   []js_ast.Expr{{Data: &js_ast.EIdentifier{Ref: repr.ast.ExportsRef}}},
		linker.go#L1726: 			Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: exportRef}},
		linker.go#L1728: 				{Data: &js_ast.EIdentifier{Ref: repr.ast.ExportsRef}},
		linker.go#L1788: 					Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.WrapperRef}},
		linker.go#L1795: 						Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.WrapperRef}},
		linker.go#L1800: 						Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.WrapperRef}},
		linker.go#L1808: 						Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: c.unboundModuleRef}},
		linker.go#L1812: 						Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.WrapperRef}},
		linker.go#L1819: 					Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.WrapperRef}},
		linker.go#L1824: 			cjsWrapStmt = js_ast.Stmt{Data: &js_ast.SReturn{Value: &js_ast.Expr{Data: &js_ast.EIdentifier{Ref: repr.ast.ExportsRef}}}}
		linker.go#L3088: 									Target: js_ast.Expr{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: exportStarRef}},
		linker.go#L3090: 										{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: repr.ast.ExportsRef}},
		linker.go#L3091: 										{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: s.NamespaceRef}},
		linker.go#L3109: 									Target: js_ast.Expr{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: exportStarRef}},
		linker.go#L3111: 										{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: repr.ast.ExportsRef}},
		linker.go#L3408: 				Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: commonJSRef}},
		linker.go#L3413: 				Target: js_ast.Expr{Data: &js_ast.EIdentifier{Ref: commonJSRef}},

	github.com/evanw/esbuild/internal/js_parser
		js_parser.go#L562: 	case *js_ast.EIdentifier:
		js_parser.go#L611: 	case *js_ast.EIdentifier:
		js_parser.go#L612: 		b, ok := right.Data.(*js_ast.EIdentifier)
		js_parser.go#L920: 	case *js_ast.EIdentifier:
		js_parser.go#L921: 		if b, ok := right.(*js_ast.EIdentifier); ok && a.Ref == b.Ref {
		js_parser.go#L1535: 		Target: js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser.go#L1753: 			if _, ok := expr.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L1847: 			value := js_ast.Expr{Loc: key.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser.go#L2239: 	return js_ast.Expr{Loc: asyncRange.Loc, Data: &js_ast.EIdentifier{Ref: p.storeNameInRef("async")}}
		js_parser.go#L2435: 		async := js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.storeNameInRef("async")}}
		js_parser.go#L2486: 	case *js_ast.EIdentifier:
		js_parser.go#L2503: 				if _, ok := item.Data.(*js_ast.EIdentifier); !ok {
		js_parser.go#L2566: 		return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: b.Ref}}
		js_parser.go#L2742: 		return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser.go#L3994: 	expr := js_ast.Expr{Loc: letRange.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser.go#L4048: 	tag := &js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.storeNameInRef(name)}}
		js_parser.go#L5238: 				if _, ok := expr.Data.(*js_ast.EIdentifier); ok && (p.lexer.Token == js_lexer.TClass || opts.tsDecorators != nil) {
		js_parser.go#L5992: 			if ident, ok := expr.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L6496: 				value: &js_ast.Expr{Loc: *opts.fnBodyLoc, Data: &js_ast.EIdentifier{Ref: *p.fnOnlyDataVisit.argumentsRef}},
		js_parser.go#L6588: 						Value:   &js_ast.Expr{Loc: s.Fn.Name.Loc, Data: &js_ast.EIdentifier{Ref: s.Fn.Name.Ref}},
		js_parser.go#L7181: 	case *js_ast.EIdentifier:
		js_parser.go#L7776: 	if id, ok := e.Test.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L7778: 		if id2, ok := e.Yes.Data.(*js_ast.EIdentifier); ok && id.Ref == id2.Ref {
		js_parser.go#L7783: 		if id2, ok := e.No.Data.(*js_ast.EIdentifier); ok && id.Ref == id2.Ref {
		js_parser.go#L7942: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser.go#L8067: 				if id, ok := (*s.Value.Expr).Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L8116: 				Target:  js_ast.Expr{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: p.moduleRef}},
		js_parser.go#L8202: 					Target:  js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: *p.enclosingNamespaceArgRef}},
		js_parser.go#L8420: 					js_ast.Expr{Loc: decl.Binding.Loc, Data: &js_ast.EIdentifier{Ref: id.Ref}},
		js_parser.go#L8508: 					Target:  js_ast.Expr{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: *p.enclosingNamespaceArgRef}},
		js_parser.go#L8512: 				js_ast.Expr{Loc: s.Fn.Name.Loc, Data: &js_ast.EIdentifier{Ref: s.Fn.Name.Ref}},
		js_parser.go#L8541: 					Target:  js_ast.Expr{Loc: stmt.Loc, Data: &js_ast.EIdentifier{Ref: *p.enclosingNamespaceArgRef}},
		js_parser.go#L8545: 				js_ast.Expr{Loc: s.Class.Name.Loc, Data: &js_ast.EIdentifier{Ref: s.Class.Name.Ref}},
		js_parser.go#L8615: 						Target:  js_ast.Expr{Loc: value.Loc, Data: &js_ast.EIdentifier{Ref: s.Arg}},
		js_parser.go#L8625: 						Target: js_ast.Expr{Loc: value.Loc, Data: &js_ast.EIdentifier{Ref: s.Arg}},
		js_parser.go#L8640: 						Target: js_ast.Expr{Loc: value.Loc, Data: &js_ast.EIdentifier{Ref: s.Arg}},
		js_parser.go#L8740: 		return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser.go#L8867: 	case *js_ast.EIdentifier:
		js_parser.go#L8875: 			return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: e.Ref}}
		js_parser.go#L8912: 					return js_ast.Assign(js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}, value)
		js_parser.go#L8915: 				return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}
		js_parser.go#L8938: 			return js_ast.Assign(js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}, value)
		js_parser.go#L8941: 		return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}
		js_parser.go#L9177: 	case *js_ast.EIdentifier:
		js_parser.go#L9223: 	value := p.handleIdentifier(loc, &js_ast.EIdentifier{
		js_parser.go#L9386: 	if id, ok := target.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L9431: 				return p.handleIdentifier(nameLoc, &js_ast.EIdentifier{Ref: item.Ref}, identifierOpts{
		js_parser.go#L9446: 				return js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: p.requireRef}}, true
		js_parser.go#L9681: 		return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: *p.fnOnlyDataVisit.thisClassStaticRef}}, true
		js_parser.go#L9695: 			return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.exportsRef}}, true
		js_parser.go#L9705: 			if idA, ok := a.Left.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L9706: 				if idB, ok := b.Left.Data.(*js_ast.EIdentifier); ok && idA.Ref == idB.Ref {
		js_parser.go#L9758: 	case *js_ast.EIdentifier, *js_ast.EDot, *js_ast.EIndex:
		js_parser.go#L9773: 	case *js_ast.EIdentifier:
		js_parser.go#L9863: 			return js_ast.Expr{Loc: expr.Loc, Data: &js_ast.EIdentifier{Ref: p.captureThis()}}, exprOut{}
		js_parser.go#L9884: 			return js_ast.Expr{Loc: expr.Loc, Data: &js_ast.EIdentifier{Ref: p.importMetaRef}}, exprOut{}
		js_parser.go#L9890: 	case *js_ast.EIdentifier:
		js_parser.go#L9923: 					if _, ok := new.Data.(*js_ast.EIdentifier); in.assignTarget == js_ast.AssignTargetNone || ok {
		js_parser.go#L10380: 			if id, ok := e.Left.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L10580: 			if id, ok := e.Target.Data.(*js_ast.EIdentifier); ok && p.symbols[id.Ref.InnerIndex].Kind == js_ast.SymbolImport {
		js_parser.go#L10593: 			_, idBefore := e.Value.Data.(*js_ast.EIdentifier)
		js_parser.go#L10595: 			id, idAfter := e.Value.Data.(*js_ast.EIdentifier)
		js_parser.go#L10605: 				if id, ok := e.Value.Data.(*js_ast.EIdentifier); ok && id.Ref == p.requireRef {
		js_parser.go#L10628: 			case *js_ast.EIdentifier:
		js_parser.go#L10925: 					if id, ok := e2.Left.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L10997: 					if id, ok := property.Value.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L11147: 					Target: js_ast.Expr{Loc: arg.Loc, Data: &js_ast.EIdentifier{Ref: p.requireRef}},
		js_parser.go#L11160: 								Target:  js_ast.Expr{Loc: arg.Loc, Data: &js_ast.EIdentifier{Ref: p.makePromiseRef()}},
		js_parser.go#L11197: 		_, wasIdentifierBeforeVisit := e.Target.Data.(*js_ast.EIdentifier)
		js_parser.go#L11221: 				if id, ok := dot.Target.Data.(*js_ast.EIdentifier); ok && id.Ref == p.requireRef {
		js_parser.go#L11243: 								Target:  js_ast.Expr{Loc: dot.Target.Loc, Data: &js_ast.EIdentifier{Ref: id.Ref}},
		js_parser.go#L11263: 			if id, ok := e.Target.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L11295: 		case *js_ast.EIdentifier:
		js_parser.go#L11332: 			if id, ok := e.Target.Data.(*js_ast.EIdentifier); ok && id.Ref == p.requireRef {
		js_parser.go#L11368: 								Target: js_ast.Expr{Loc: e.Target.Loc, Data: &js_ast.EIdentifier{Ref: id.Ref}},
		js_parser.go#L11486: 		if id, ok := target.Data.(*js_ast.EIdentifier); ok && p.importItemsForNamespace[id.Ref] != nil {
		js_parser.go#L11529: 	if id, ok := expr.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L11545: func (p *parser) handleIdentifier(loc logger.Loc, e *js_ast.EIdentifier, opts identifierOpts) js_ast.Expr {
		js_parser.go#L11553: 			return js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.captureArguments()}}
		js_parser.go#L11593: 				Target:  js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: nsRef}},
		js_parser.go#L12023: 				if id, ok := value.Data.(*js_ast.EIdentifier); ok {
		js_parser.go#L12274: 	case *js_ast.EIdentifier:
		js_parser.go#L12402: 	case *js_ast.EIdentifier:
		js_parser.go#L12527: 			if _, ok := e.Value.Data.(*js_ast.EIdentifier); ok {
		js_parser_lower.go#L269: 				init := js_ast.Expr{Loc: arg.Binding.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser_lower.go#L373: 				forwardedArgs = js_ast.Expr{Loc: bodyLoc, Data: &js_ast.EIdentifier{Ref: *p.fnOnlyDataVisit.argumentsRef}}
		js_parser_lower.go#L400: 					item := js_ast.Expr{Loc: arg.Binding.Loc, Data: &js_ast.EIdentifier{Ref: id.Ref}}
		js_parser_lower.go#L435: 									Index:  js_ast.Expr{Loc: bodyLoc, Data: &js_ast.EIdentifier{Ref: argRef}},
		js_parser_lower.go#L776: 	case *js_ast.EIdentifier:
		js_parser_lower.go#L778: 			js_ast.Expr{Loc: value.Loc, Data: &js_ast.EIdentifier{Ref: left.Ref}},
		js_parser_lower.go#L968: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: private.Ref}},
		js_parser_lower.go#L969: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: fnRef}},
		js_parser_lower.go#L979: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: private.Ref}},
		js_parser_lower.go#L980: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: fnRef}},
		js_parser_lower.go#L987: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: private.Ref}},
		js_parser_lower.go#L1006: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: private.Ref}},
		js_parser_lower.go#L1008: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: fnRef}},
		js_parser_lower.go#L1015: 			{Loc: loc, Data: &js_ast.EIdentifier{Ref: private.Ref}},
		js_parser_lower.go#L1154: 			if expr, ok := p.lowerObjectRestInAssign(s.Value, js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}}); ok {
		js_parser_lower.go#L1155: 				s.Value.Data = &js_ast.EIdentifier{Ref: ref}
		js_parser_lower.go#L1165: 			decl := js_ast.Decl{Binding: s.Decls[0].Binding, Value: &js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}}}
		js_parser_lower.go#L1192: 		decl := js_ast.Decl{Binding: *catch.Binding, Value: &js_ast.Expr{Loc: catch.Binding.Loc, Data: &js_ast.EIdentifier{Ref: ref}}}
		js_parser_lower.go#L1286: 		if id, ok := expr.Data.(*js_ast.EIdentifier); ok {
		js_parser_lower.go#L1294: 		assign(js_ast.Expr{Loc: expr.Loc, Data: &js_ast.EIdentifier{Ref: ref}}, expr)
		js_parser_lower.go#L1313: 				js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}})
		js_parser_lower.go#L1314: 			init = js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser_lower.go#L1345: 		binding.Data = &js_ast.EIdentifier{Ref: splitRef}
		js_parser_lower.go#L1355: 			tailInit = js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tailRef}}
		js_parser_lower.go#L1356: 			items = append(items, js_ast.Expr{Loc: loc, Data: &js_ast.ESpread{Value: js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tailRef}}}})
		js_parser_lower.go#L1365: 		visit(deferredBinding, js_ast.Expr{Loc: split.Loc, Data: &js_ast.EIdentifier{Ref: splitRef}}, nil)
		js_parser_lower.go#L1386: 			init = js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser_lower.go#L1387: 			afterSplitInit = js_ast.Expr{Loc: init.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser_lower.go#L1396: 		binding.Data = &js_ast.EIdentifier{Ref: splitRef}
		js_parser_lower.go#L1404: 		visit(deferredBinding, js_ast.Expr{Loc: binding.Loc, Data: &js_ast.EIdentifier{Ref: splitRef}}, nil)
		js_parser_lower.go#L1505: 	case *js_ast.EIdentifier:
		js_parser_lower.go#L1508: 			return p.callRuntime(loc, "__restKey", []js_ast.Expr{{Loc: loc, Data: &js_ast.EIdentifier{Ref: k.Ref}}})
		js_parser_lower.go#L1515: 		finalKey = js_ast.Assign(js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}, originalKey)
		js_parser_lower.go#L1518: 			return p.callRuntime(loc, "__restKey", []js_ast.Expr{{Loc: loc, Data: &js_ast.EIdentifier{Ref: tempRef}}})
		js_parser_lower.go#L1644: 				p.mergeSymbols(class.Name.Ref, name.Data.(*js_ast.EIdentifier).Ref)
		js_parser_lower.go#L1658: 			return js_ast.Expr{Loc: classLoc, Data: &js_ast.EIdentifier{Ref: class.Name.Ref}}
		js_parser_lower.go#L1729: 					js_ast.Assign(js_ast.Expr{Loc: prop.Key.Loc, Data: &js_ast.EIdentifier{Ref: ref}}, prop.Key))
		js_parser_lower.go#L1730: 				prop.Key = js_ast.Expr{Loc: prop.Key.Loc, Data: &js_ast.EIdentifier{Ref: ref}}
		js_parser_lower.go#L1756: 				case *js_ast.EIdentifier:
		js_parser_lower.go#L1757: 					descriptorKey = js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: k.Ref}}
		js_parser_lower.go#L1832: 						js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser_lower.go#L1833: 						js_ast.Expr{Loc: loc, Data: &js_ast.ENew{Target: js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.weakMapRef}}}},
		js_parser_lower.go#L1840: 							Target:  js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser_lower.go#L1908: 						js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser_lower.go#L1909: 						js_ast.Expr{Loc: loc, Data: &js_ast.ENew{Target: js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: p.weakSetRef}}}},
		js_parser_lower.go#L1924: 							Target:  js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: ref}},
		js_parser_lower.go#L1959: 					js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: methodRef}},
		js_parser_lower.go#L1978: 										js_ast.Expr{Loc: arg.Binding.Loc, Data: &js_ast.EIdentifier{Ref: id.Ref}},
		js_parser_lower.go#L2015: 					Args:   []js_ast.Expr{{Loc: classLoc, Data: &js_ast.ESpread{Value: js_ast.Expr{Loc: classLoc, Data: &js_ast.EIdentifier{Ref: argumentsRef}}}}},
		js_parser_lower.go#L2105: 		keepNameStmt = p.keepStmtSymbolName(name.Loc, name.Data.(*js_ast.EIdentifier).Ref, nameToKeep)
		js_parser_lower.go#L2116: 		nameRef := name.Data.(*js_ast.EIdentifier).Ref
		js_parser_lower.go#L2166: 			init = &js_ast.Expr{Loc: classLoc, Data: &js_ast.EIdentifier{Ref: captureRef}}
		js_parser_lower.go#L2230: 			js_ast.Expr{Loc: nameForClassDecorators.Loc, Data: &js_ast.EIdentifier{Ref: nameForClassDecorators.Ref}},
		js_parser_lower.go#L2233: 				{Loc: nameForClassDecorators.Loc, Data: &js_ast.EIdentifier{Ref: nameForClassDecorators.Ref}},
		js_parser_lower.go#L2282: 		Target: js_ast.Expr{Loc: loc, Data: &js_ast.EIdentifier{Ref: *p.fnOrArrowDataVisit.superIndexRef}},
		ts_parser.go#L838: 	value := js_ast.Expr{Loc: p.lexer.Loc(), Data: &js_ast.EIdentifier{Ref: p.storeNameInRef(name)}}
		ts_parser.go#L1010: 			js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: nameRef}},
		ts_parser.go#L1014: 					Target:  js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: *p.enclosingNamespaceArgRef}},
		ts_parser.go#L1020: 						Target:  js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: *p.enclosingNamespaceArgRef}},
		ts_parser.go#L1035: 			Left: js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: nameRef}},
		ts_parser.go#L1037: 				js_ast.Expr{Loc: nameLoc, Data: &js_ast.EIdentifier{Ref: nameRef}},

	github.com/evanw/esbuild/internal/js_printer
		js_printer.go#L1159: 				case *js_ast.EIdentifier:
		js_printer.go#L1917: 	case *js_ast.EIdentifier:
		js_printer.go#L2120: 	if id, ok := value.Data.(*js_ast.EIdentifier); ok {

	github.com/evanw/esbuild/pkg/api
		api_impl.go#L402: 						return &js_ast.EIdentifier{Ref: args.FindSymbol(args.Loc, name)}
		api_impl.go#L453: 			return &js_ast.EIdentifier{Ref: args.SymbolForDefine(index)}