Documentation
¶
Index ¶
Examples ¶
Constants ¶
View Source
const ( LeafNode = iota CompositeNode )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Component ¶
type Component interface {
Parent() Component
SetParent(Component)
Name() string
SetName(string)
AddChild(Component)
Print(string)
}
func NewComponent ¶
type Composite ¶
type Composite struct {
// contains filtered or unexported fields
}
Example ¶
root := NewComponent(CompositeNode, "root")
c1 := NewComponent(CompositeNode, "c1")
c2 := NewComponent(CompositeNode, "c2")
c3 := NewComponent(CompositeNode, "c3")
l1 := NewComponent(LeafNode, "l1")
l2 := NewComponent(LeafNode, "l2")
l3 := NewComponent(LeafNode, "l3")
root.AddChild(c1)
root.AddChild(c2)
c1.AddChild(c3)
c1.AddChild(l1)
c2.AddChild(l2)
c2.AddChild(l3)
root.Print("")
Output: +root +c1 +c3 -l1 +c2 -l2 -l3
func NewComposite ¶
func NewComposite() *Composite
Click to show internal directories.
Click to hide internal directories.