MCPcopy Create free account
hub / github.com/araddon/qlbridge / resolveInclude

Function resolveInclude

vm/vm.go:194–217  ·  view source on GitHub ↗
(ctx expr.Includer, inc *expr.IncludeNode, depth int)

Source from the content-addressed store, hash-verified

192}
193
194func 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
219func walkInclude(ctx expr.EvalContext, inc *expr.IncludeNode, depth int) (value.Value, bool) {
220

Callers 3

findDateMathMethod · 0.70
resolveIncludesDepthFunction · 0.70
walkIncludeFunction · 0.70

Calls 3

resolveIncludesDepthFunction · 0.85
IncludeMethod · 0.65
StringMethod · 0.65

Tested by

no test coverage detected