TSMultiTree.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sat, 26 Apr 2014 13:13:06 +0200
changeset 3250 e1ae9376992c
child 3667 f1a59ae2e064
permissions -rw-r--r--
initial checkin

"{ Package: 'stx:libbasic2' }"

TSTree subclass:#TSMultiTree
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'Collections-Ordered-Trees'
!

!TSMultiTree class methodsFor:'documentation'!

documentation
"
    TSMultiTree is pretty much like TSTree but it can store multiple
    (different) values per key. Uses equality compare (=) to search for 
    the occurrence.

    [author:]
        Jan Vrany <jan.vrany@fit.cvut.cz>

    [instance variables:]

    [class variables:]

    [see also:]

"
! !

!TSMultiTree methodsFor:'accessing'!

at: aString put: anObject
        aString isEmpty ifTrue: [self error: 'Keys cannot be empty'].
        root isNil ifTrue: [root := TSMultiTreeNode key: aString first].
        root lookupString: aString startingAt: 1 insert: anObject.
        ^ anObject

    "Created: / 26-04-2014 / 11:47:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!TSMultiTree class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/libbasic2/TSMultiTree.st,v 1.1 2014-04-26 11:13:06 vrany Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/libbasic2/TSMultiTree.st,v 1.1 2014-04-26 11:13:06 vrany Exp $'
! !