opa: github.com/open-policy-agent/opa/dependencies Index | Files

package dependencies

import "github.com/open-policy-agent/opa/dependencies"

Package dependencies provides functions for determining the set of ast.Refs that AST elements depend on.

Index

Package Files

deps.go doc.go

func All Uses

func All(x interface{}) (resolved []ast.Ref, err error)

All returns the list of data ast.Refs that the given AST element depends on.

func Base Uses

func Base(compiler *ast.Compiler, x interface{}) ([]ast.Ref, error)

Base returns the list of base data documents that the given AST element depends on.

The returned refs are always constant and are truncated at any point where they become dynamic. That is, a ref like data.a.b[x] will be truncated to data.a.b.

func Minimal Uses

func Minimal(x interface{}) (resolved []ast.Ref, err error)

Minimal returns the list of data ast.Refs that the given AST element depends on. If an AST element depends on a ast.Ref that is a prefix of another dependency, the ast.Ref that is the prefix of the other will be the only one in the returned list.

As an example, if an element depends on data.x and data.x.y, only data.x will be in the returned list.

func Virtual Uses

func Virtual(compiler *ast.Compiler, x interface{}) ([]ast.Ref, error)

Virtual returns the list of virtual data documents that the given AST element depends on.

The returned refs are always constant and are truncated at any point where they become dynamic. That is, a ref like data.a.b[x] will be truncated to data.a.b.

Package dependencies imports 4 packages (graph) and is imported by 8 packages. Updated 2020-02-12. Refresh now. Tools for package owners.