Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 33 for SliceExpr (0.13 sec)

  1. src/go/printer/testdata/parser.go

    		isSlice = true
    		p.next()
    		if p.tok != token.RBRACK {
    			high = p.parseRhs()
    		}
    	}
    	p.exprLev--
    	rbrack := p.expect(token.RBRACK)
    
    	if isSlice {
    		return &ast.SliceExpr{x, lbrack, low, high, rbrack}
    	}
    	return &ast.IndexExpr{x, lbrack, low, rbrack}
    }
    
    func (p *parser) parseCallOrConversion(fun ast.Expr) *ast.CallExpr {
    	if p.trace {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Jul 20 20:19:51 UTC 2023
    - 50.5K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ir/fmt.go

    	case OINDEX, OINDEXMAP:
    		n := n.(*IndexExpr)
    		exprFmt(n.X, s, nprec)
    		fmt.Fprintf(s, "[%v]", n.Index)
    
    	case OSLICE, OSLICESTR, OSLICEARR, OSLICE3, OSLICE3ARR:
    		n := n.(*SliceExpr)
    		exprFmt(n.X, s, nprec)
    		fmt.Fprint(s, "[")
    		if n.Low != nil {
    			fmt.Fprint(s, n.Low)
    		}
    		fmt.Fprint(s, ":")
    		if n.High != nil {
    			fmt.Fprint(s, n.High)
    		}
    		if n.Op().IsSlice3() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 05 15:20:28 UTC 2023
    - 26K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/typecheck/expr.go

    		n.SetType(types.NewPtr(types.Types[types.TUINT8]))
    	} else {
    		n.SetType(types.NewPtr(t.Elem()))
    	}
    	return n
    }
    
    // tcSlice typechecks an OSLICE or OSLICE3 node.
    func tcSlice(n *ir.SliceExpr) ir.Node {
    	n.X = DefaultLit(Expr(n.X), nil)
    	n.Low = indexlit(Expr(n.Low))
    	n.High = indexlit(Expr(n.High))
    	n.Max = indexlit(Expr(n.Max))
    	hasmax := n.Op().IsSlice3()
    	l := n.X
    	if l.Type() == nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 23.1K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/syntax/parser.go

    			if !p.got(_Colon) {
    				p.syntaxError("expected comma, : or ]")
    				p.advance(_Comma, _Colon, _Rbrack)
    			}
    			p.xnest++
    			t := new(SliceExpr)
    			t.pos = pos
    			t.X = x
    			t.Index[0] = i
    			if p.tok != _Colon && p.tok != _Rbrack {
    				// x[i:j...
    				t.Index[1] = p.expr()
    			}
    			if p.tok == _Colon {
    				t.Full = true
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 19:19:55 UTC 2024
    - 62.9K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/typecheck/typecheck.go

    		n := n.(*ir.StringHeaderExpr)
    		return tcStringHeader(n)
    
    	case ir.OMAKESLICECOPY:
    		n := n.(*ir.MakeExpr)
    		return tcMakeSliceCopy(n)
    
    	case ir.OSLICE, ir.OSLICE3:
    		n := n.(*ir.SliceExpr)
    		return tcSlice(n)
    
    	// call and call like
    	case ir.OCALL:
    		n := n.(*ir.CallExpr)
    		return tcCall(n, top)
    
    	case ir.OCAP, ir.OLEN:
    		n := n.(*ir.UnaryExpr)
    		return tcLenCap(n)
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
  6. src/cmd/vendor/golang.org/x/tools/internal/stdlib/manifest.go

    		{"SendStmt.Chan", Field, 0},
    		{"SendStmt.Value", Field, 0},
    		{"SliceExpr", Type, 0},
    		{"SliceExpr.High", Field, 0},
    		{"SliceExpr.Lbrack", Field, 0},
    		{"SliceExpr.Low", Field, 0},
    		{"SliceExpr.Max", Field, 2},
    		{"SliceExpr.Rbrack", Field, 0},
    		{"SliceExpr.Slice3", Field, 2},
    		{"SliceExpr.X", Field, 0},
    		{"SortImports", Func, 0},
    		{"Spec", Type, 0},
    		{"StarExpr", Type, 0},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 02:20:05 UTC 2024
    - 534.2K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/walk/order.go

    		if lhs == nil || lhs.Op() != ir.ONAME && !ir.SameSafeExpr(lhs, n.Args[0]) {
    			return o.copyExpr(n)
    		}
    		return n
    
    	case ir.OSLICE, ir.OSLICEARR, ir.OSLICESTR, ir.OSLICE3, ir.OSLICE3ARR:
    		n := n.(*ir.SliceExpr)
    		n.X = o.expr(n.X, nil)
    		n.Low = o.cheapExpr(o.expr(n.Low, nil))
    		n.High = o.cheapExpr(o.expr(n.High, nil))
    		n.Max = o.cheapExpr(o.expr(n.Max, nil))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 08 02:00:33 UTC 2024
    - 42.7K bytes
    - Viewed (0)
  8. src/go/printer/nodes.go

    		p.expr1(x.X, token.HighestPrec, 1)
    		p.setPos(x.Lbrack)
    		p.print(token.LBRACK)
    		p.exprList(x.Lbrack, x.Indices, depth+1, commaTerm, x.Rbrack, false)
    		p.setPos(x.Rbrack)
    		p.print(token.RBRACK)
    
    	case *ast.SliceExpr:
    		// TODO(gri): should treat[] like parentheses and undo one level of depth
    		p.expr1(x.X, token.HighestPrec, 1)
    		p.setPos(x.Lbrack)
    		p.print(token.LBRACK)
    		indices := []ast.Expr{x.Low, x.High}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 17 18:53:17 UTC 2023
    - 52.6K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssagen/ssa.go

    		var skip skipMask
    		if rhs != nil && (rhs.Op() == ir.OSLICE || rhs.Op() == ir.OSLICE3 || rhs.Op() == ir.OSLICESTR) && ir.SameSafeExpr(rhs.(*ir.SliceExpr).X, n.X) {
    			// We're assigning a slicing operation back to its source.
    			// Don't write back fields we aren't changing. See issue #14855.
    			rhs := rhs.(*ir.SliceExpr)
    			i, j, k := rhs.Low, rhs.High, rhs.Max
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
  10. src/go/parser/parser.go

    			}
    			if index[2] == nil {
    				p.error(colons[1], "final index required in 3-index slice")
    				index[2] = &ast.BadExpr{From: colons[1] + 1, To: rbrack}
    			}
    		}
    		return &ast.SliceExpr{X: x, Lbrack: lbrack, Low: index[0], High: index[1], Max: index[2], Slice3: slice3, Rbrack: rbrack}
    	}
    
    	if len(args) == 0 {
    		// index expression
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Dec 08 20:07:50 UTC 2023
    - 72.2K bytes
    - Viewed (0)
Back to top