Crate codebake

Source
Expand description

codebake is a toy data-processing framework and lisp inspired by Cyberchef

This file contains the top-level structures for working with codebake Dishes

Modules§

lisp
The lisp that codebake embeds as a scripting language
ops
The raw functions for operations on Dishes are implemented in this module Each category has its own file (data_format.rs, textual.rs, etc.)

Structs§

DishError
An error that occurred while performing an operation on some DishData. This is the E type in codebake::Result.
OperationArguments
Storage container for arguments to operations, guaranteed to be valid (i.e containing all required arguments) when passed as an argument to an Operation
OperationInfo
Entirely statically declared struct that holds all the information about an Operation required for embedding it in the lisp

Enums§

Dish
A Dish is the core component of codebake, and is basically just a wrapper around DishData and DishError. Haskellers may think of it as an Either DishError DishData.
DishData
DishData represents both the type of data and the data contained within it. The types are not very rich and are just indicators of how the data should be handled. This allows for operation fxns to handle textual and binary data separately.
OperationArg
Actually holds an argument value for an Operation
OperationArgType
Represents an argument to an Operation declaratively

Statics§

EMPTY_ARGS
Constant for an empty OperationArguments (i.e the inner field is None)

Type Aliases§

DishResult
The Result type of codebake