Documentation ¶
Index ¶
- type Catalog
- func (cat *Catalog) AssembleCatalog() (err error)
- func (cat *Catalog) CurrentScene() (ret string)
- func (cat *Catalog) EnsureScene(name string) (ret *Domain)
- func (cat *Catalog) GetRuntime() rt.Runtime
- func (cat *Catalog) NewCounter(name string) (ret string)
- func (cat *Catalog) SceneBegin(name string, at compact.Source, exe []rt.Execute) (ret *mdl.Pen, err error)
- func (cat *Catalog) SceneEnd()
- func (cat *Catalog) Schedule(when weaver.Phase, cb func(weaver.Weaves, rt.Runtime) error) error
- func (cat *Catalog) ScheduleCmd(key typeinfo.Markup, when weaver.Phase, ...) error
- func (cat *Catalog) SchedulePos(pos compact.Source, when weaver.Phase, ...) error
- func (cat *Catalog) Step(pos compact.Source, cb func(weaver.Phase, *mdl.Pen) error) error
- type Domain
- type Env
- type PenCreator
- type Processing
- type SceneStack
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Catalog ¶
type Catalog struct { *mdl.Modeler // db output Env Env // generic storage for command processing // contains filtered or unexported fields }
Catalog - receives ephemera from the importer.
func NewCatalog ¶
func NewCatalogWithWarnings ¶
func (*Catalog) AssembleCatalog ¶
walk the domains and run the commands remaining in their queues
func (*Catalog) CurrentScene ¶ added in v0.24.8
return name of the scene currently being woven. fix: i dont think this should be exposed its only for jess.
func (*Catalog) EnsureScene ¶ added in v0.24.8
find or create the named domain
func (*Catalog) GetRuntime ¶
func (*Catalog) NewCounter ¶
func (*Catalog) SceneBegin ¶ added in v0.24.8
func (*Catalog) ScheduleCmd ¶ added in v0.24.8
func (cat *Catalog) ScheduleCmd(key typeinfo.Markup, when weaver.Phase, cb func(weaver.Weaves, rt.Runtime) error) error
run the passed function now or in the future.
type Domain ¶
type Domain struct {
// contains filtered or unexported fields
}
func (*Domain) AddInitialValue ¶ added in v0.24.8
func (d *Domain) AddInitialValue(noun, field string, val rt.Assignment)
type Env ¶
custom storage for importers ( ie. package story ) alt: could use context and pass through all functions to be more go like.
type PenCreator ¶ added in v0.24.8
manufacture a particular weaver for a particular phase and source position
type Processing ¶ added in v0.24.8
type Processing struct {
// contains filtered or unexported fields
}
domains are processed one at a time, starting with those which have zero dependencies, ending with those which have the most dependencies.
func (*Processing) RunPhases ¶ added in v0.24.8
func (proc *Processing) RunPhases(cp PenCreator) (err error)
func (*Processing) Schedule ¶ added in v0.24.8
func (proc *Processing) Schedule(when weaver.Phase, pos compact.Source, req func(weaver.Phase, *mdl.Pen) error) (err error)
queue the scheduled callback for processing.
func (*Processing) UpdatePhase ¶ added in v0.24.8
func (proc *Processing) UpdatePhase(cp PenCreator, now weaver.Phase) (err error)
run the passed phase until all scheduled callbacks have finished. error if they didn't finish ( for example, after trying all of them and failing )
type SceneStack ¶ added in v0.24.8
type SceneStack []*Domain
tracks the current target of calls to schedule(). ( often two deep: the tapestry domain, . and the domain being processed. )
func (*SceneStack) Pop ¶ added in v0.24.8
func (k *SceneStack) Pop() (ret *Domain, okay bool)
return false if empty
func (*SceneStack) Push ¶ added in v0.24.8
func (k *SceneStack) Push(d *Domain)
func (*SceneStack) Top ¶ added in v0.24.8
func (k *SceneStack) Top() (ret *Domain, okay bool)