1
0
Fork 0
yeast/chain/flow.go

40 lines
564 B
Go

package chain
type (
Flow int
)
const (
UnknownFlow Flow = iota
SequentialFlow
ParallelFlow
DelayedFlow
)
var (
flowSymbols = map[string]Flow{
"s": SequentialFlow,
"p": ParallelFlow,
"d": DelayedFlow,
}
flowNames = map[Flow]string{
UnknownFlow: "Unknown",
SequentialFlow: "Sequential",
ParallelFlow: "Parallel",
DelayedFlow: "Delayed",
}
)
func FlowOf(f string) Flow {
if flow, ok := flowSymbols[f]; ok {
return flow
} else {
return UnknownFlow
}
}
func (f Flow) String() string {
name, _ := flowNames[f]
return name
}