github.com/evanw/esbuild/internal/js_ast.EBinary.Op (field)
138 uses
github.com/evanw/esbuild/internal/js_ast (current package)
js_ast.go#L400: Op OpCode
js_ast.go#L695: return Expr{Loc: a.Loc, Data: &EBinary{Op: BinOpAssign, Left: a, Right: b}}
js_ast.go#L748: switch e.Op {
js_ast.go#L751: e.Op = BinOpLooseNe
js_ast.go#L756: e.Op = BinOpLooseEq
js_ast.go#L761: e.Op = BinOpStrictNe
js_ast.go#L766: e.Op = BinOpStrictEq
js_ast.go#L791: switch e.Op {
js_ast.go#L823: switch e.Op {
js_ast.go#L859: switch e.Op {
js_ast.go#L879: if comma, ok := a.Data.(*EBinary); ok && comma.Op == BinOpComma {
js_ast.go#L886: if binary, ok := b.Data.(*EBinary); ok && binary.Op == op {
js_ast.go#L896: return Expr{Loc: a.Loc, Data: &EBinary{Op: op, Left: a, Right: b}}
js_ast.go#L900: return Expr{Loc: a.Loc, Data: &EBinary{Op: BinOpComma, Left: a, Right: b}}
github.com/evanw/esbuild/internal/js_parser
js_parser.go#L688: switch e.Op {
js_parser.go#L753: switch e.Op {
js_parser.go#L853: switch e.Op {
js_parser.go#L949: if b, ok := right.(*js_ast.EBinary); ok && a.Op == b.Op && valuesLookTheSame(a.Left.Data, b.Left.Data) &&
js_parser.go#L2461: if assign, ok := expr.Data.(*js_ast.EBinary); ok && assign.Op == js_ast.BinOpAssign {
js_parser.go#L2763: Op: js_ast.BinOpAdd,
js_parser.go#L2780: Op: js_ast.BinOpAdd,
js_parser.go#L2786: Op: js_ast.BinOpAdd,
js_parser.go#L3324: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpComma, Left: left, Right: p.parseExpr(js_ast.LComma)}}
js_parser.go#L3591: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpComma, Left: left, Right: p.parseExpr(js_ast.LComma)}}
js_parser.go#L3598: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpAdd, Left: left, Right: p.parseExpr(js_ast.LAdd)}}
js_parser.go#L3605: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpAddAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3612: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpSub, Left: left, Right: p.parseExpr(js_ast.LAdd)}}
js_parser.go#L3619: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpSubAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3626: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpMul, Left: left, Right: p.parseExpr(js_ast.LMultiply)}}
js_parser.go#L3633: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpPow, Left: left, Right: p.parseExpr(js_ast.LExponentiation - 1)}}
js_parser.go#L3640: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpPowAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3647: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpMulAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3654: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpRem, Left: left, Right: p.parseExpr(js_ast.LMultiply)}}
js_parser.go#L3661: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpRemAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3668: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpDiv, Left: left, Right: p.parseExpr(js_ast.LMultiply)}}
js_parser.go#L3675: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpDivAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3682: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLooseEq, Left: left, Right: p.parseExpr(js_ast.LEquals)}}
js_parser.go#L3689: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLooseNe, Left: left, Right: p.parseExpr(js_ast.LEquals)}}
js_parser.go#L3696: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpStrictEq, Left: left, Right: p.parseExpr(js_ast.LEquals)}}
js_parser.go#L3703: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpStrictNe, Left: left, Right: p.parseExpr(js_ast.LEquals)}}
js_parser.go#L3718: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLt, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L3725: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLe, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L3732: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpGt, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L3739: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpGe, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L3746: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpShl, Left: left, Right: p.parseExpr(js_ast.LShift)}}
js_parser.go#L3753: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpShlAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3760: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpShr, Left: left, Right: p.parseExpr(js_ast.LShift)}}
js_parser.go#L3767: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpShrAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3774: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpUShr, Left: left, Right: p.parseExpr(js_ast.LShift)}}
js_parser.go#L3781: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpUShrAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3788: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpNullishCoalescing, Left: left, Right: p.parseExpr(js_ast.LNullishCoalescing)}}
js_parser.go#L3795: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpNullishCoalescingAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3809: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalOr, Left: left, Right: right}}
js_parser.go#L3824: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalOrAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3837: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalAnd, Left: left, Right: p.parseExpr(js_ast.LLogicalAnd)}}
js_parser.go#L3852: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalAndAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3859: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseOr, Left: left, Right: p.parseExpr(js_ast.LBitwiseOr)}}
js_parser.go#L3866: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseOrAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3873: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseAnd, Left: left, Right: p.parseExpr(js_ast.LBitwiseAnd)}}
js_parser.go#L3880: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseAndAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3887: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseXor, Left: left, Right: p.parseExpr(js_ast.LBitwiseXor)}}
js_parser.go#L3894: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpBitwiseXorAssign, Left: left, Right: p.parseExpr(js_ast.LAssign - 1)}}
js_parser.go#L3917: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpIn, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L3934: left = js_ast.Expr{Loc: left.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpInstanceof, Left: left, Right: p.parseExpr(js_ast.LCompare)}}
js_parser.go#L7035: if comma, ok := prevS.Test.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L7094: if comma, ok := prevS.Test.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L7241: if e.Op.BinaryAssignTarget() == js_ast.AssignTargetNone {
js_parser.go#L7253: if replacementCanBeRemoved || !e.Op.IsShortCircuit() {
js_parser.go#L7578: s.Test = &js_ast.Expr{Loc: s.Test.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalAnd, Left: *s.Test, Right: not}}
js_parser.go#L7591: s.Test = &js_ast.Expr{Loc: s.Test.Loc, Data: &js_ast.EBinary{Op: js_ast.BinOpLogicalAnd, Left: *s.Test, Right: ifS.Test}}
js_parser.go#L7739: if comma, ok := e.Test.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L7803: if comma, ok := e.No.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma && valuesLookTheSame(e.Yes.Data, comma.Right.Data) {
js_parser.go#L7811: if comma, ok := e.Yes.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma && valuesLookTheSame(comma.Right.Data, e.No.Data) {
js_parser.go#L7819: if binary, ok := e.Yes.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpLogicalOr &&
js_parser.go#L7822: Op: js_ast.BinOpLogicalOr,
js_parser.go#L7829: if binary, ok := e.No.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpLogicalAnd &&
js_parser.go#L7832: Op: js_ast.BinOpLogicalAnd,
js_parser.go#L7881: switch binary.Op {
js_parser.go#L9536: switch e.Op {
js_parser.go#L9541: e.Op = js_ast.BinOpComma
js_parser.go#L9552: e.Op = js_ast.BinOpComma
js_parser.go#L9703: if a, ok := left.Data.(*js_ast.EBinary); ok && a.Op == op {
js_parser.go#L9704: if b, ok := right.Data.(*js_ast.EBinary); ok && b.Op == op {
js_parser.go#L10018: e.Left, _ = p.visitExprInOut(e.Left, exprIn{assignTarget: e.Op.BinaryAssignTarget()})
js_parser.go#L10021: if e.Op == js_ast.BinOpLogicalAnd && e.Left.Data == p.typeofRequireEqualsFn {
js_parser.go#L10026: switch e.Op {
js_parser.go#L10067: switch e.Op {
js_parser.go#L10075: switch e.Op {
js_parser.go#L10136: e.Op = js_ast.BinOpLooseEq
js_parser.go#L10178: e.Op = js_ast.BinOpLooseNe
js_parser.go#L10204: if right, ok := e.Right.Data.(*js_ast.EBinary); ok && right.Op == js_ast.BinOpNullishCoalescing {
js_parser.go#L10231: if right, ok := e.Right.Data.(*js_ast.EBinary); ok && right.Op == js_ast.BinOpLogicalOr {
js_parser.go#L10238: e.Op = js_ast.BinOpLooseEq
js_parser.go#L10261: if right, ok := e.Right.Data.(*js_ast.EBinary); ok && right.Op == js_ast.BinOpLogicalAnd {
js_parser.go#L10268: e.Op = js_ast.BinOpLooseNe
js_parser.go#L10286: if left, ok := e.Left.Data.(*js_ast.EBinary); ok && left.Op == js_ast.BinOpAdd {
js_parser.go#L10289: return js_ast.Expr{Loc: expr.Loc, Data: &js_ast.EBinary{Op: left.Op, Left: left.Left, Right: *result}}, exprOut{}
js_parser.go#L10480: if p.options.mangleSyntax && e.Op != js_ast.BinOpComma {
js_parser.go#L10481: if comma, ok := e.Left.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L10485: Op: e.Op,
js_parser.go#L10730: if comma, ok := e.Value.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L10919: if in.assignTarget != js_ast.AssignTargetNone && e2.Op == js_ast.BinOpAssign {
js_parser.go#L10982: if binary, ok := property.Value.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpAssign {
js_parser.go#L12377: switch e.Op {
js_parser.go#L12419: Op: js_ast.BinOpAdd,
js_parser.go#L12491: Op: js_ast.BinOpAdd,
js_parser.go#L12537: switch e.Op {
js_parser.go#L12598: if e.Op == js_ast.BinOpAdd {
js_parser_lower.go#L719: Op: js_ast.BinOpLooseEq,
js_parser_lower.go#L819: Op: js_ast.BinOpNullishCoalescing,
js_parser_lower.go#L833: Op: js_ast.BinOpNullishCoalescing,
js_parser_lower.go#L846: Op: op,
js_parser_lower.go#L856: Op: op,
js_parser_lower.go#L869: Op: js_ast.BinOpLooseNe,
js_parser_lower.go#L1037: Op: op,
js_parser_lower.go#L1046: Op: op,
js_parser_lower.go#L1056: Op: op,
js_parser_lower.go#L1094: if e.Op == js_ast.BinOpAssign && exprHasObjectRest(e.Left) {
js_parser_lower.go#L1256: if e.Op == js_ast.BinOpAssign && findRestBindings(e.Left) {
js_parser_lower.go#L1338: if binary, ok := binding.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpAssign {
js_parser_lower.go#L1499: Op: js_ast.BinOpAdd,
ts_parser.go#L1012: Op: js_ast.BinOpLogicalOr,
ts_parser.go#L1034: Op: js_ast.BinOpLogicalOr,
github.com/evanw/esbuild/internal/js_printer
js_printer.go#L2035: entry := js_ast.OpTable[e.Op]
js_printer.go#L2036: wrap := level >= entry.Level || (e.Op == js_ast.BinOpIn && (flags&forbidIn) != 0)
js_printer.go#L2053: if e.Op.IsRightAssociative() {
js_printer.go#L2056: if e.Op.IsLeftAssociative() {
js_printer.go#L2060: switch e.Op {
js_printer.go#L2063: if left, ok := e.Left.Data.(*js_ast.EBinary); ok && (left.Op == js_ast.BinOpLogicalOr || left.Op == js_ast.BinOpLogicalAnd) {
js_printer.go#L2066: if right, ok := e.Right.Data.(*js_ast.EBinary); ok && (right.Op == js_ast.BinOpLogicalOr || right.Op == js_ast.BinOpLogicalAnd) {
js_printer.go#L2092: if e.Op != js_ast.BinOpComma {
js_printer.go#L2100: p.printSpaceBeforeOperator(e.Op)
js_printer.go#L2102: p.prevOp = e.Op
 |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |