(id int64, comp ComprehensionExpr)
| 354 | } |
| 355 | |
| 356 | func protoComprehension(id int64, comp ComprehensionExpr) (*exprpb.Expr, error) { |
| 357 | iterRange, err := ExprToProto(comp.IterRange()) |
| 358 | if err != nil { |
| 359 | return nil, err |
| 360 | } |
| 361 | accuInit, err := ExprToProto(comp.AccuInit()) |
| 362 | if err != nil { |
| 363 | return nil, err |
| 364 | } |
| 365 | loopCond, err := ExprToProto(comp.LoopCondition()) |
| 366 | if err != nil { |
| 367 | return nil, err |
| 368 | } |
| 369 | loopStep, err := ExprToProto(comp.LoopStep()) |
| 370 | if err != nil { |
| 371 | return nil, err |
| 372 | } |
| 373 | result, err := ExprToProto(comp.Result()) |
| 374 | if err != nil { |
| 375 | return nil, err |
| 376 | } |
| 377 | return &exprpb.Expr{ |
| 378 | Id: id, |
| 379 | ExprKind: &exprpb.Expr_ComprehensionExpr{ |
| 380 | ComprehensionExpr: &exprpb.Expr_Comprehension{ |
| 381 | IterVar: comp.IterVar(), |
| 382 | IterVar2: comp.IterVar2(), |
| 383 | IterRange: iterRange, |
| 384 | AccuVar: comp.AccuVar(), |
| 385 | AccuInit: accuInit, |
| 386 | LoopCondition: loopCond, |
| 387 | LoopStep: loopStep, |
| 388 | Result: result, |
| 389 | }, |
| 390 | }, |
| 391 | }, nil |
| 392 | } |
| 393 | |
| 394 | func protoIdent(id int64, name string) (*exprpb.Expr, error) { |
| 395 | return &exprpb.Expr{ |
no test coverage detected