Documentation ¶
Index ¶
- type Activations
- func (a *Activations) CurrentOrNew() hamt.Map
- func (a *Activations) Depth() int
- func (a *Activations) Find(key string) interface{}
- func (a *Activations) Pop()
- func (a *Activations) Push(activation hamt.Map)
- func (a *Activations) PushCurrent()
- func (a *Activations) Set(name string, value interface{})
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Activations ¶
type Activations struct {
// contains filtered or unexported fields
}
Activations is a stack of activation records. Each entry represents a new scope.
func (*Activations) CurrentOrNew ¶
func (a *Activations) CurrentOrNew() hamt.Map
func (*Activations) Depth ¶
func (a *Activations) Depth() int
func (*Activations) Find ¶
func (a *Activations) Find(key string) interface{}
func (*Activations) Pop ¶
func (a *Activations) Pop()
func (*Activations) Push ¶
func (a *Activations) Push(activation hamt.Map)
func (*Activations) PushCurrent ¶
func (a *Activations) PushCurrent()
PushCurrent makes a copy of the current activation, and pushes it to the top of the activation stack, so that the `Find` method only needs to look up a certain record by name from the current activation record without having to go through each activation in the stack.
func (*Activations) Set ¶
func (a *Activations) Set(name string, value interface{})
Set adds the new key value pair to the current scope. The current scope is updated in an immutable way.
Click to show internal directories.
Click to hide internal directories.