Documentation ¶
Overview ¶
Package lifter contains the part of the tester framework that lifts litmus tests to compilable C.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrDriverNil occurs when a lifter runs without a SingleLifter set. ErrDriverNil = errors.New("driver nil") // ErrNoBackend occurs when backend information is missing. ErrNoBackend = errors.New("no backend provided") )
View Source
var ( // ErrObserverNil occurs when we try to pass a nil observer as an option. ErrObserverNil = errors.New("observer nil") )
Functions ¶
This section is empty.
Types ¶
type Error ¶
type Error struct { // ServiceName is a guess at the name of the service. ServiceName string // Subject is, if non-nil, the name of the subject being lifted. Subject *subject.Named // Job is the job that was being processed when the error occurred. Job backend.LiftJob // Spec is // Inner is the inner error. Inner error }
Error contains an error that occurred while lifting, as well as context.
func (*Error) SubjectName ¶
SubjectName gets any subject name for this error.
type Instance ¶
type Instance struct { // Arches is the list of architectures for which this job is responsible. Arches []id.ID // Driver is the single-lift driver for this job. Driver backend.SingleLifter // Paths is the path resolver for this job. Paths Pather // Runner is the runner on which the lifter should be run. Runner service.Runner // Subject is the subject that we are trying to lift. Subject subject.Named // ResCh is the channel onto which each fuzzed subject should be sent. ResCh chan<- builder.Request }
Instance is the type of per-subject lifter jobs.
type Lifter ¶
type Lifter struct {
// contains filtered or unexported fields
}
Lifter holds the main configuration for the lifter part of the tester framework.
type Option ¶
Option is the type of options to pass to New.
func ObserveWith ¶
ObserveWith adds each observer in obs to the lifter's observer list.
func SendStderrTo ¶
SendStderrTo makes the lifter send any stderr output from its driver to w.
type Pather ¶
type Pather interface { // Prepare sets up a pathset to deal with the architecture IDs arches and subject names subjects. Prepare(arches []id.ID, subjects []string) error // Path gets the path to the directory prepared for arch and subject. // It fails if no such directory has been prepared. Path(arch id.ID, subject string) (string, error) }
Pather abstracts over the path resolution for a lifter.
Click to show internal directories.
Click to hide internal directories.