lab: github.com/mb0/lab Index | Files | Directories

package lab

import "github.com/mb0/lab"

Package lab provides a global module register.

Index

Package Files

conf.go lab.go

Variables

var Conf = flag.NewFlagSet("config", flag.ContinueOnError)

Conf is special flag set that can be loaded via LoadConf in three passes.

func All Uses

func All() []Module

All returns all registered modules.

func LoadConf Uses

func LoadConf()

LoadConf loads the Conf flag set values in three passes on first invocation. The first pass will parse the arguments to populate the -conf flag. The second pass loads the file specified by the -conf flag. The third pass overrides all flags specifed by program arguments.

func Register Uses

func Register(name string, mod Module)

Register registers a module by name. It must be called before the lab is started.

func Start Uses

func Start()

Start locks the lab and initializes and runs all modules.

type Initer Uses

type Initer interface {
    Init()
}

Initer modules are initialized in registration order on lab start.

type Module Uses

type Module interface{}

Module is a part of your program.

func Mod Uses

func Mod(name string) Module

Mod returns a registered module with name or nil.

type Runner Uses

type Runner interface {
    Run()
}

Runner modules are run in a new goroutine on lab start.

Directories

PathSynopsis
golabCommand golab starts either a CLI for build and test reports or a webinterface with reports and collaborative editing support.
golab/gosrc
golab/htmod
hub
otPackage ot provides operational transformation utilities for byte text collaboration.
wsPackage ws implements a workspace for file resources.

Package lab imports 9 packages (graph) and is imported by 3 packages. Updated 2016-07-16. Refresh now. Tools for package owners.