cel

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 28, 2025 License: Apache-2.0

README

Protobom CEL Integration

This repository houses the protobom CEL integration. This is a go module that can be embedded in other programs that wish to let users query and recompose SBOM data based on the Common Expression Language (CEL).

This project provides the functions and data types to expose the protobom graph API to the CEL evaluator.

⚠️ Under Construction ⚠️

Please excuse the dust while we move the module into the protobom project. While this code is reasonably mature, please expect things to move around a lot before we cut the first release. Especially since we're refactoring it to be a general purpose go module.

Also: Contributions are welcome starting now!

Documentation

We have some documentation and examples, we'll expand them as soon as we've moved in.

History

This project was originally funded by the DHS Science and Technology directorate.

Directories

Path Synopsis
pkg
elements
Package elements has wrappers of the protobom elements (from the main protobuf definition) that implement the ref.Val interface used by the CEL runtime.
Package elements has wrappers of the protobom elements (from the main protobuf definition) that implement the ref.Val interface used by the CEL runtime.
functions
Package functions contains the implementation of the functions that are exposed to the CEL environment.
Package functions contains the implementation of the functions that are exposed to the CEL environment.
library
Package library defined CEL compile and program options in an object that can be used as a library in a CEL environment.
Package library defined CEL compile and program options in an object that can be used as a library in a CEL environment.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL