BuiltinLookup.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 22 Sep 2015 16:28:42 +0100
branchjv
changeset 18759 c1217211909c
parent 18115 26ac4840e5d0
child 23107 40173e082cbc
permissions -rw-r--r--
Changed identification strings to contain jv-branch ...to make explicit that this distribution is not the official one used by eXept and therefore that eXept is not to be blamed in case of any problem.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
     1
"
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     2
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
     3
              All Rights Reserved
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
     4
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     5
Permission is hereby granted, free of charge, to any person
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     6
obtaining a copy of this software and associated documentation
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     7
files (the 'Software'), to deal in the Software without
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     8
restriction, including without limitation the rights to use,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
     9
copy, modify, merge, publish, distribute, sublicense, and/or sell
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    10
copies of the Software, and to permit persons to whom the
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    11
Software is furnished to do so, subject to the following
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    12
conditions:
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    13
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    14
The above copyright notice and this permission notice shall be
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    15
included in all copies or substantial portions of the Software.
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    16
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    17
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    18
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    19
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    20
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    21
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    22
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    23
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    24
OTHER DEALINGS IN THE SOFTWARE.
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    25
"
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    26
"{ Package: 'stx:libbasic' }"
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    27
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    28
Lookup subclass:#BuiltinLookup
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    29
	instanceVariableNames:''
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    30
	classVariableNames:'Instance'
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    31
	poolDictionaries:''
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    32
	category:'Kernel-Extensions'
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    33
!
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    34
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    35
!BuiltinLookup class methodsFor:'documentation'!
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    36
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    37
copyright
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    38
"
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    39
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    40
              All Rights Reserved
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    41
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    42
Permission is hereby granted, free of charge, to any person
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    43
obtaining a copy of this software and associated documentation
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    44
files (the 'Software'), to deal in the Software without
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    45
restriction, including without limitation the rights to use,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    46
copy, modify, merge, publish, distribute, sublicense, and/or sell
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    47
copies of the Software, and to permit persons to whom the
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    48
Software is furnished to do so, subject to the following
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    49
conditions:
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    50
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    51
The above copyright notice and this permission notice shall be
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    52
included in all copies or substantial portions of the Software.
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    53
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    54
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    55
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    56
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    57
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    58
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    59
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    60
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    61
OTHER DEALINGS IN THE SOFTWARE.
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    62
"
15868
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    63
!
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    64
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    65
documentation
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    66
"
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    67
    the standard smalltalk method lookup algorithm
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    68
"
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    69
! !
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    70
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    71
!BuiltinLookup class methodsFor:'instance creation'!
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    72
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    73
new
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    74
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    75
    ^self instance
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    76
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    77
    "Created: / 26-04-2010 / 19:25:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    78
! !
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    79
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    80
!BuiltinLookup class methodsFor:'accessing'!
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    81
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    82
instance
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    83
    
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    84
    Instance isNil ifTrue: [Instance := self basicNew].
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    85
    ^ Instance
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    86
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    87
    "Created: / 26-04-2010 / 19:25:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    88
    "Modified: / 26-04-2010 / 21:32:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    89
! !
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    90
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    91
!BuiltinLookup class methodsFor:'documentation'!
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    92
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    93
version_CVS
15868
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    94
    ^ '$Header: /cvs/stx/stx/libbasic/BuiltinLookup.st,v 1.3 2013-12-16 13:40:00 cg Exp $'
13404
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    95
!
7b32ff0e0c72 initial checkin
Claus Gittinger <cg@exept.de>
parents: 13401
diff changeset
    96
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    97
version_SVN
15868
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
    98
    ^ '$Id: BuiltinLookup.st,v 1.3 2013-12-16 13:40:00 cg Exp $'
13401
36713d9bc967 Added Lookup.st BuiltinLookup.st
vrany
parents:
diff changeset
    99
! !
15868
8bad01430c41 class: BuiltinLookup
Claus Gittinger <cg@exept.de>
parents: 13404
diff changeset
   100