type github.com/evanw/esbuild/internal/js_ast.EBinary
117 uses
github.com/evanw/esbuild/internal/js_ast (current package)
js_ast.go#L397: type EBinary struct {
js_ast.go#L648: func (*EBinary) isExpr() {}
js_ast.go#L695: return Expr{Loc: a.Loc, Data: &EBinary{Op: BinOpAssign, Left: a, Right: b}}
js_ast.go#L744: case *EBinary:
js_ast.go#L790: case *EBinary:
js_ast.go#L822: case *EBinary:
js_ast.go#L858: case *EBinary:
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#L687: case *js_ast.EBinary:
js_parser.go#L752: case *js_ast.EBinary:
js_parser.go#L852: case *js_ast.EBinary:
js_parser.go#L948: case *js_ast.EBinary:
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#L2762: value = js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser.go#L2779: value = js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser.go#L2785: value = js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
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#L7239: case *js_ast.EBinary:
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#L7821: return js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser.go#L7829: if binary, ok := e.No.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpLogicalAnd &&
js_parser.go#L7831: return js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser.go#L7880: if binary, ok := e.Test.Data.(*js_ast.EBinary); ok {
js_parser.go#L9292: func maybeSimplifyEqualityComparison(e *js_ast.EBinary, isNotEqual bool) (js_ast.Expr, bool) {
js_parser.go#L9535: case *js_ast.EBinary:
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#L9747: func locAfterOp(e *js_ast.EBinary) logger.Loc {
js_parser.go#L10015: case *js_ast.EBinary:
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#L10261: if right, ok := e.Right.Data.(*js_ast.EBinary); ok && right.Op == js_ast.BinOpLogicalAnd {
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#L10481: if comma, ok := e.Left.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L10484: Data: &js_ast.EBinary{
js_parser.go#L10730: if comma, ok := e.Value.Data.(*js_ast.EBinary); ok && comma.Op == js_ast.BinOpComma {
js_parser.go#L10918: case *js_ast.EBinary:
js_parser.go#L10982: if binary, ok := property.Value.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpAssign {
js_parser.go#L12376: case *js_ast.EBinary:
js_parser.go#L12418: result = js_ast.Expr{Loc: part.Value.Loc, Data: &js_ast.EBinary{
js_parser.go#L12490: result = maybeJoinWithComma(result, js_ast.Expr{Loc: property.Key.Loc, Data: &js_ast.EBinary{
js_parser.go#L12536: case *js_ast.EBinary:
js_parser.go#L12597: case *js_ast.EBinary:
js_parser_lower.go#L718: Test: js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L789: func (p *parser) lowerExponentiationAssignmentOperator(loc logger.Loc, e *js_ast.EBinary) js_ast.Expr {
js_parser_lower.go#L806: func (p *parser) lowerNullishCoalescingAssignmentOperator(loc logger.Loc, e *js_ast.EBinary) js_ast.Expr {
js_parser_lower.go#L818: return targetWrapFunc(js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L832: return js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L840: func (p *parser) lowerLogicalAssignmentOperator(loc logger.Loc, e *js_ast.EBinary, op js_ast.OpCode) js_ast.Expr {
js_parser_lower.go#L845: return targetWrapFunc(js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L855: return js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L868: Test: js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
js_parser_lower.go#L1036: assign := valueWrapFunc(targetWrapFunc(p.lowerPrivateSet(target, loc, private, js_ast.Expr{Loc: target.Loc, Data: &js_ast.EBinary{
js_parser_lower.go#L1045: return targetWrapFunc(p.lowerPrivateSet(target, loc, private, js_ast.Expr{Loc: target.Loc, Data: &js_ast.EBinary{
js_parser_lower.go#L1055: return targetWrapFunc(p.lowerPrivateSet(targetFunc(), loc, private, js_ast.Expr{Loc: value.Loc, Data: &js_ast.EBinary{
js_parser_lower.go#L1093: case *js_ast.EBinary:
js_parser_lower.go#L1255: case *js_ast.EBinary:
js_parser_lower.go#L1338: if binary, ok := binding.Data.(*js_ast.EBinary); ok && binary.Op == js_ast.BinOpAssign {
js_parser_lower.go#L1498: return js_ast.Expr{Loc: loc, Data: &js_ast.EBinary{
ts_parser.go#L1011: js_ast.Expr{Loc: nameLoc, Data: &js_ast.EBinary{
ts_parser.go#L1033: argExpr = js_ast.Expr{Loc: nameLoc, Data: &js_ast.EBinary{
github.com/evanw/esbuild/internal/js_printer
js_printer.go#L2034: case *js_ast.EBinary:
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) {
 |
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. |