Grafoscopio/repository/Grafoscopio/GrafoscopioRootNode.class.st

47 lines
958 B
Smalltalk

"
This is a root node. It represents a document.
"
Class {
#name : #GrafoscopioRootNode,
#superclass : #GrafoscopioAbstractNode,
#instVars : [
'children'
],
#category : 'Grafoscopio-Model'
}
{ #category : #accessing }
GrafoscopioRootNode >> acceptVisitor: aGrafoscopioVisitor [
aGrafoscopioVisitor visitRootNode: self.
]
{ #category : #accessing }
GrafoscopioRootNode >> acceptsChildsOfClass: aClass [
^ {GrafoscopioUnitNode} includes: aClass
]
{ #category : #accessing }
GrafoscopioRootNode >> addChild: aBlock ofClass: aClass [
(self acceptsChildsOfClass: aClass)
ifTrue: [ self children add: aBlock value ]
]
{ #category : #'as yet unclassified' }
GrafoscopioRootNode >> children [
^ children
]
{ #category : #accessing }
GrafoscopioRootNode >> initialize [
super initialize.
children := SortedCollection new
sortBlock: [ :a :b | a order < b order ];
yourself
]
{ #category : #accessing }
GrafoscopioRootNode >> level [
^ 1
]