50 ^ self == LLVMObject. |
50 ^ self == LLVMObject. |
51 ! ! |
51 ! ! |
52 |
52 |
53 !LLVMObject methodsFor:'assertions'! |
53 !LLVMObject methodsFor:'assertions'! |
54 |
54 |
|
55 assertIsBasicBlock: value |
|
56 <resource: #skipInDebuggersWalkback> |
|
57 |
|
58 self assert:(value isKindOf: LLVMBasicBlock) message: 'value is not an LLVM basic block' |
|
59 |
|
60 "Created: / 15-08-2015 / 23:45:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
61 ! |
|
62 |
55 assertIsBasicBlockValue:value |
63 assertIsBasicBlockValue:value |
56 <resource: #skipInDebuggersWalkback> |
64 <resource: #skipInDebuggersWalkback> |
57 |
65 |
58 self assert:value isLLVMValue. |
66 self assert:value isLLVMValue. |
59 self assert:value isBasicBlockValue |
67 self assert:value isBasicBlockValue |
60 |
68 |
61 "Created: / 08-08-2015 / 02:43:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
69 "Created: / 08-08-2015 / 02:43:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
62 ! |
70 ! |
63 |
71 |
|
72 assertIsBoolean: value |
|
73 <resource: #skipInDebuggersWalkback> |
|
74 |
|
75 self assert: value isBoolean message: 'value is not a boolean'. |
|
76 |
|
77 "Created: / 13-08-2015 / 06:52:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
78 ! |
|
79 |
64 assertIsFunctionValue: value |
80 assertIsFunctionValue: value |
65 <resource: #skipInDebuggersWalkback> |
81 <resource: #skipInDebuggersWalkback> |
66 |
82 |
67 self assert: value isLLVMFunction message: 'value is not an LLVMFunction'. |
83 self assert: value isLLVMFunction message: 'value is not an LLVMFunction'. |
68 |
84 |
69 "Created: / 10-08-2015 / 18:55:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
85 "Created: / 10-08-2015 / 18:55:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
86 ! |
|
87 |
|
88 assertIsInteger64Unsigned:value |
|
89 <resource: #skipInDebuggersWalkback> |
|
90 |
|
91 self assert: value isInteger message: 'value is not an integer'. |
|
92 self assert: (value between: 0 and: 16rFFFFFFFFFFFFFFFF) message: 'value out of range' |
|
93 |
|
94 "Created: / 14-08-2015 / 07:32:33 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
70 ! |
95 ! |
71 |
96 |
72 assertIsIntegerOrIntegerVectorValue:value |
97 assertIsIntegerOrIntegerVectorValue:value |
73 <resource: #skipInDebuggersWalkback> |
98 <resource: #skipInDebuggersWalkback> |
74 |
99 |
76 self assert:(value isIntegerOrIntegerVectorValue) |
101 self assert:(value isIntegerOrIntegerVectorValue) |
77 |
102 |
78 "Modified (format): / 08-08-2015 / 02:41:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
103 "Modified (format): / 08-08-2015 / 02:41:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
79 ! |
104 ! |
80 |
105 |
81 assertIsIntegerUnsigned: value |
106 assertIsIntegerUnsigned:value |
82 <resource: #skipInDebuggersWalkback> |
107 <resource: #skipInDebuggersWalkback> |
83 |
108 |
84 self assert: value isInteger message: 'value is not an integer'. |
109 self assert: value isInteger message: 'value is not an integer'. |
85 self assert: (value between: 0 and: 16rFFFFFFFF) message: 'value out of range'. |
110 self assert: (value between: 0 and: 16rFFFFFFFF) message: 'value out of range' |
86 |
111 |
87 "Created: / 13-08-2015 / 18:57:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
112 "Created: / 13-08-2015 / 06:49:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
113 ! |
|
114 |
|
115 assertIsMetadata: value |
|
116 <resource: #skipInDebuggersWalkback> |
|
117 |
|
118 self assert: value isLLVMMetadata message: 'value is not an LLVMMetadata'. |
|
119 |
|
120 "Created: / 14-08-2015 / 08:50:28 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
121 ! |
|
122 |
|
123 assertIsMetadataArray: values |
|
124 <resource: #skipInDebuggersWalkback> |
|
125 |
|
126 self assert: values isSequenceable message: 'values is not a sequenceable collection'. |
|
127 values do:[:value | |
|
128 self assertIsMetadata: value. |
|
129 ]. |
|
130 |
|
131 "Created: / 14-08-2015 / 08:50:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
88 ! |
132 ! |
89 |
133 |
90 assertIsString:aString |
134 assertIsString:aString |
91 <resource: #skipInDebuggersWalkback> |
135 <resource: #skipInDebuggersWalkback> |
92 |
136 |
93 self assert:aString isSingleByteString description:'string is not a valid LLVM name (twine)' |
137 self assert:(aString isSymbol or:[aString isSingleByteString]) description:'string is not a valid LLVM name (twine)' |
94 |
138 |
95 "Created: / 07-08-2015 / 18:38:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
139 "Created: / 07-08-2015 / 18:38:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
96 "Modified (format): / 08-08-2015 / 02:41:59 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
140 "Modified: / 13-08-2015 / 07:01:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
97 ! |
141 ! |
98 |
142 |
99 assertIsType: type |
143 assertIsType: type |
100 <resource: #skipInDebuggersWalkback> |
144 <resource: #skipInDebuggersWalkback> |
101 |
145 |