RGDefinition.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sat, 29 Aug 2015 10:31:59 +0100
changeset 2 e439b82dda7d
parent 0 43cb9f3e345e
child 5 5cc2caa88b23
permissions -rw-r--r--
Fixed some tests. Not all pass, though,
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/ring' }"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
Object subclass:#RGDefinition
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'annotations name'
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Ring-Core-Kernel'
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
RGDefinition comment:'I am the root class of the Ring meta-model.
A Ring definition has a name, can be annotated and knows its environment'
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
!RGDefinition class methodsFor:'instance creation'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
new
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
    "return an initialized instance"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
    ^ self basicNew initialize.
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!RGDefinition class methodsFor:'annotations'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
authorKey
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
    ^#author
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
fullNameKey
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
    ^#fullName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
timeStampKey
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
    ^#timestamp
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
!RGDefinition class methodsFor:'class initialization'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
named: aName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
    ^self new
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
        name: aName asSymbol;
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
        yourself
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
!RGDefinition methodsFor:'accessing'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
environment
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    "If the receiver has not namespace assigned the default is used"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    "self class environment = Smalltalk globals"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    ^ self annotationNamed: #environment ifAbsent: [ self class environment ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
environment: namespace
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    namespace = self class environment
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
        ifFalse:[ self annotationNamed: #environment put: namespace ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
fullName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    ^self name
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
name
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    ^name
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
name: anObject
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    "a symbol or a string should be expected"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    name:= anObject
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
rootEnvironment
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    "Retrieves the runtime environment of an RGObject"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
    "If the receiver is defined in an RGContainer the runtime environment is the one associated to its container"
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    | parent |
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
    parent:= self environment.
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    [ parent isRingObject ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
        whileTrue:[ parent:= parent environment ].
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    ^parent
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
!RGDefinition methodsFor:'annotations'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
annotationNamed: annotationName 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
    "Answer the value of the annotation named <annotationName>, or 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
    nil if the annotation is not defined for the receiver."
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    ^ self
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
        annotationNamed: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
        ifAbsent: [ nil ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
annotationNamed: annotationName ifAbsent: exceptionBlock 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    "Answer the value of the annotation named <annotationName>. If the 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    annotation is not defined for the receiver, answer the result of 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    evaluating the <exceptionBlock>."
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
    self hasAnnotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
        ifFalse: [ ^exceptionBlock value ].
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
    ^self annotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
            at: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
            ifAbsent: [ exceptionBlock value ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
annotationNamed: annotationName ifAbsentPut: blockValue 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    ^self annotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
        at: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
        ifAbsentPut: blockValue
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
annotationNamed: annotationName put: value 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
    self annotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
        at: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
        put: value
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
annotationNames
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
    self hasAnnotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
        ifFalse:[ ^OrderedCollection new ].
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
    ^annotations keys
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
annotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
    ^annotations ifNil:[ annotations:= IdentityDictionary new ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
hasAnnotationNamed: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
    "Answer <true> if the receiver contains the annotation named <annotationName>. "
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    self hasAnnotations	
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
        ifFalse:[ ^false ].
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    ^annotations includesKey: annotationName
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
hasAnnotations
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
    ^annotations notNil
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
removeAnnotationNamed: annotationName 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
    "Remove the annotation named <annotationName>. Fails quietly if there 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
    is no annotation with the given name."
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
    
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
    (self hasAnnotationNamed: annotationName)
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
        ifTrue:[ annotations removeKey: annotationName ]
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
!RGDefinition methodsFor:'converting'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
asRingDefinition
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
    ^ self
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
!RGDefinition methodsFor:'testing types'!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
isAccess 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
isComment
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
isGlobalVariable
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
isInheritance
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
isInvocation
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
isMethod
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
isNamespace
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
isOrganization 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
isPackage
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
isPool
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
isReference 
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
isRingObject
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
    ^true
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
isSlice
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
!
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
isVariable
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
    ^false
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
! !
43cb9f3e345e Initial port form Pharo
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240