(ctx expr.Includer, inc *expr.IncludeNode, depth int)
| 192 | } |
| 193 | |
| 194 | func resolveInclude(ctx expr.Includer, inc *expr.IncludeNode, depth int) error { |
| 195 | |
| 196 | if inc.ExprNode != nil { |
| 197 | return nil |
| 198 | } |
| 199 | |
| 200 | incExpr, err := ctx.Include(inc.Identity.Text) |
| 201 | if err != nil { |
| 202 | if err == expr.ErrNoIncluder { |
| 203 | return err |
| 204 | } |
| 205 | u.Debugf("Could not find include for filter:%s err=%v", inc.String(), err) |
| 206 | return err |
| 207 | } |
| 208 | if incExpr == nil { |
| 209 | u.Debugf("Includer %T returned a nil filter statement!", inc) |
| 210 | return expr.ErrIncludeNotFound |
| 211 | } |
| 212 | if err = resolveIncludesDepth(ctx, incExpr, depth+1); err != nil { |
| 213 | return err |
| 214 | } |
| 215 | inc.ExprNode = incExpr |
| 216 | return nil |
| 217 | } |
| 218 | |
| 219 | func walkInclude(ctx expr.EvalContext, inc *expr.IncludeNode, depth int) (value.Value, bool) { |
| 220 |
no test coverage detected