dsl

package
v1.3.1-0...-aae603d Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2026 License: GPL-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action interface {
	// Execute performs an action until it is complete or it
	// encounters an error.
	Execute(sdk.Vehicle, MissionData) error
}

Action holds an action type that can be used as a state in the mission FSM.

type Datatype

type Datatype interface {
	// Type is a blank function that is only used to make a struct as a DSL datatype. Any
	// struct that implements this function will be found by the package loader.
	Type()
}

Datatype holds a type that is used in an Event or an Action.

type Event

type Event interface {
	// Monitor continues to check for an event state until it
	// occurs or encounters an error.
	Monitor(sdk.Vehicle, MissionData) (bool, error)
}

Event holds an event type that can be used as a transition function in the mission FSM.

type MissionData

type MissionData struct {
	Cap  sdk.CapFile    // cap corresponding to this device
	Map  geo.Map        // mission map initialized from GeoJSON (optional)
	Role swarm.Role     // role in the current mission
	Log  zerolog.Logger // logger for this mission
}

MissionData holds extra data that is useful for DSL tasks.

Directories

Path Synopsis
Package swarm declares the DSL's swarm coordination types, generated at compile time with the const values a mission's manifest file makes available, to prevent string mismatch errors at runtime.
Package swarm declares the DSL's swarm coordination types, generated at compile time with the const values a mission's manifest file makes available, to prevent string mismatch errors at runtime.

Jump to

Keyboard shortcuts

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