LLVMObject.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 26 Jan 2016 23:45:52 +0000
changeset 52 64d32e0b879a
parent 44 8cade0a4d22e
child 57 4ca7c3a327a2
permissions -rw-r--r--
Moved LLVMModuleTests to package jv:llvm_s/tests
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     1
"
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     2
    Copyright (C) 2015-now Jan Vrany
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     3
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     4
    This code is not an open-source (yet). You may use this code
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     5
    for your own experiments and projects, given that:
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     6
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     7
    * all modification to the code will be sent to the
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     8
      original author for inclusion in future releases
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
     9
    * this is not used in any commercial software
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    10
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    11
    This license is provisional and may (will) change in
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    12
    a future.
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    13
"
12
f98e97fd02ef Package renamed from jv:libllvms to jv:llvm_s
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    14
"{ Package: 'jv:llvm_s' }"
1
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
"{ NameSpace: Smalltalk }"
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
ExternalAddress subclass:#LLVMObject
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	instanceVariableNames:''
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	classVariableNames:''
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    21
	poolDictionaries:'LLVMTypeKind'
13
fa967c0e1827 Renamed class categories to begin with LLVM-S
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12
diff changeset
    22
	category:'LLVM-S-Internal'
1
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!
e3dcb6272f0b Introduced abstract superclasses LLVMObject and LLVMDisposableObject
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
14
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    25
!LLVMObject class methodsFor:'documentation'!
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    26
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    27
copyright
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    28
"
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    29
    Copyright (C) 2015-now Jan Vrany
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    30
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    31
    This code is not an open-source (yet). You may use this code
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    32
    for your own experiments and projects, given that:
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    33
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    34
    * all modification to the code will be sent to the
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    35
      original author for inclusion in future releases
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    36
    * this is not used in any commercial software
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    37
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    38
    This license is provisional and may (will) change in
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    39
    a future.
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    40
"
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    41
! !
c7dea3fcc5a7 Added short README, license.txt and updated copyright information
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    42
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    43
!LLVMObject class methodsFor:'asserting'!
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    44
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    45
assertIsString:aString 
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    46
    <resource: #skipInDebuggersWalkBack>
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    47
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    48
    self assert:(aString isSymbol or:[aString isSingleByteString]) message:'string is not a valid LLVM name (twine)'
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    49
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    50
    "Created: / 14-09-2015 / 10:39:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    51
! !
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    52
27
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    53
!LLVMObject class methodsFor:'queries'!
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    54
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    55
isAbstract
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    56
    "Return if this class is an abstract class.
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    57
     True is returned here for myself only; false for subclasses.
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    58
     Abstract subclasses must redefine again."
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    59
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    60
    ^ self == LLVMObject.
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    61
! !
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
    62
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    63
!LLVMObject methodsFor:'assertions'!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    64
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    65
assertIsBasicBlock: value 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    66
    <resource: #skipInDebuggersWalkBack>
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    67
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    68
    self assert:(value isKindOf: LLVMBasicBlock) message: 'value is not an LLVM basic block'
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    69
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    70
    "Created: / 15-08-2015 / 23:45:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    71
    "Modified: / 14-09-2015 / 11:08:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    72
!
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    73
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    74
assertIsBasicBlockValue:value 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    75
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    76
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    77
    self assert:value isLLVMValue.
43
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
    78
    self assert:value isBasicBlock
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    79
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    80
    "Created: / 08-08-2015 / 02:43:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
43
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
    81
    "Modified: / 17-09-2015 / 19:25:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    82
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
    83
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    84
assertIsBoolean: value
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    85
    <resource: #skipInDebuggersWalkBack>
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    86
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    87
    self assert: value isBoolean message: 'value is not a boolean'.
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    88
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    89
    "Created: / 13-08-2015 / 06:52:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
    90
    "Modified: / 14-09-2015 / 11:08:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    91
!
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
    92
41
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    93
assertIsDIBasicType: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    94
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    95
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    96
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    97
    self assert: value isDIBasicType message: 'value is not of type DIBasicType'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    98
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    99
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   100
assertIsDICompileUnit: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   101
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   102
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   103
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   104
    self assert: value isDICompileUnit message: 'value is not of type DICompileUnit'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   105
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   106
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   107
assertIsDICompositeType: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   108
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   109
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   110
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   111
    self assert: value isDICompositeType message: 'value is not of type DICompositeType'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   112
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   113
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   114
assertIsDIDerivedType: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   115
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   116
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   117
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   118
    self assert: value isDIDerivedType message: 'value is not of type DIDerivedType'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   119
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   120
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   121
assertIsDIEnumerator: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   122
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   123
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   124
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   125
    self assert: value isDIEnumerator message: 'value is not of type DIEnumerator'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   126
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   127
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   128
assertIsDIExpression: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   129
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   130
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   131
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   132
    self assert: value isDIExpression message: 'value is not of type DIExpression'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   133
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   134
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   135
assertIsDIFile: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   136
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   137
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   138
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   139
    self assert: value isDIFile message: 'value is not of type DIFile'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   140
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   141
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   142
assertIsDIGlobalVariable: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   143
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   144
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   145
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   146
    self assert: value isDIGlobalVariable message: 'value is not of type DIGlobalVariable'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   147
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   148
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   149
assertIsDIImportedEntity: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   150
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   151
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   152
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   153
    self assert: value isDIImportedEntity message: 'value is not of type DIImportedEntity'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   154
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   155
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   156
assertIsDILexicalBlock: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   157
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   158
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   159
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   160
    self assert: value isDILexicalBlock message: 'value is not of type DILexicalBlock'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   161
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   162
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   163
assertIsDILexicalBlockFile: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   164
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   165
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   166
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   167
    self assert: value isDILexicalBlockFile message: 'value is not of type DILexicalBlockFile'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   168
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   169
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   170
assertIsDILocalScope: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   171
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   172
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   173
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   174
    self assert: value isDILocalScope message: 'value is not of type DILocalScope'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   175
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   176
    "Created: / 17-09-2015 / 17:00:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   177
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   178
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   179
assertIsDILocalVariable: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   180
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   181
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   182
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   183
    self assert: value isDILocalVariable message: 'value is not of type DILocalVariable'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   184
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   185
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   186
assertIsDILocation: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   187
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   188
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   189
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   190
    self assert: value isDILocation message: 'value is not of type DILocation'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   191
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   192
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   193
assertIsDINamespace: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   194
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   195
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   196
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   197
    self assert: value isDINamespace message: 'value is not of type DINamespace'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   198
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   199
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   200
assertIsDIObjCProperty: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   201
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   202
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   203
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   204
    self assert: value isDIObjCProperty message: 'value is not of type DIObjCProperty'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   205
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   206
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   207
assertIsDIScope: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   208
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   209
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   210
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   211
    self assert: value isDIScope message: 'value is not of type DILocalScope'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   212
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   213
    "Created: / 17-09-2015 / 17:04:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   214
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   215
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   216
assertIsDISubprogram: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   217
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   218
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   219
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   220
    self assert: value isDISubprogram message: 'value is not of type DISubprogram'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   221
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   222
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   223
assertIsDISubprogramType: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   224
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   225
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   226
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   227
    self assert: value isDISubprogramType message: 'value is not of type DISubprogramType'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   228
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   229
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   230
assertIsDISubrange: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   231
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   232
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   233
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   234
    self assert: value isDISubrange message: 'value is not of type DISubrange'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   235
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   236
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   237
assertIsDIType: value
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   238
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   239
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   240
    self assert: value isLLVMMetadata message: 'value is not a LLVMMetadata'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   241
    self assert: value isDIType message: 'value is not of type DIType'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   242
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   243
    "Created: / 17-09-2015 / 17:00:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   244
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   245
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   246
assertIsDITypeArray: values
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   247
    <resource: #skipInDebuggersWalkBack>
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   248
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   249
    self assert: values isSequenceable message: 'values is not a sequenceable collection'.
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   250
    values do:[:value | 
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   251
        self assertIsDIType: value.  
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   252
    ].
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   253
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   254
    "Created: / 17-09-2015 / 17:02:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   255
!
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   256
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   257
assertIsFunctionValue: value
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   258
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   259
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   260
    self assert: value isLLVMFunction message: 'value is not an LLVMFunction'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   261
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   262
    "Created: / 10-08-2015 / 18:55:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   263
    "Modified: / 14-09-2015 / 11:09:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   264
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   265
44
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   266
assertIsInstruction:value 
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   267
    <resource: #skipInDebuggersWalkBack>
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   268
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   269
    self assert:value isLLVMValue.
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   270
    self assert:value isInstruction
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   271
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   272
    "Created: / 23-09-2015 / 21:29:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   273
!
8cade0a4d22e IR Builder: Added #positionBefore:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 43
diff changeset
   274
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   275
assertIsInteger64Unsigned:value 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   276
    <resource: #skipInDebuggersWalkBack>
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   277
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   278
    self assert: value isInteger message: 'value is not an integer'.
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   279
    self assert: (value between: 0 and: 16rFFFFFFFFFFFFFFFF) message: 'value out of range'
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   280
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   281
    "Created: / 14-08-2015 / 07:32:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   282
    "Modified: / 14-09-2015 / 11:09:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   283
!
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   284
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   285
assertIsIntegerOrIntegerVectorValue:value 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   286
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   287
43
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   288
    | type |
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   289
43
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   290
    self assertIsValue: value.
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   291
    type := value type.
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   292
    self assert:(type isIntegerType or:[type isVectorType]) message: 'Value is not of integer or vector type'
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   293
597181c496f0 Added value-kind testing functions to LLVMValue
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 41
diff changeset
   294
    "Modified: / 17-09-2015 / 19:32:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   295
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   296
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   297
assertIsIntegerUnsigned:value 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   298
    <resource: #skipInDebuggersWalkBack>
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   299
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   300
    self assert: value isInteger message: 'value is not an integer'.
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   301
    self assert: (value between: 0 and: 16rFFFFFFFF) message: 'value out of range'
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   302
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   303
    "Created: / 13-08-2015 / 06:49:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   304
    "Modified: / 14-09-2015 / 11:09:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   305
!
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   306
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   307
assertIsMetadata: value
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   308
    <resource: #skipInDebuggersWalkBack>
27
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   309
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   310
    self assert: value isLLVMMetadata message: 'value is not an LLVMMetadata'.
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   311
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   312
    "Created: / 14-08-2015 / 08:50:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   313
    "Modified: / 14-09-2015 / 11:09:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   314
!
27
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   315
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   316
assertIsMetadataArray: values
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   317
    <resource: #skipInDebuggersWalkBack>
33
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   318
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   319
    self assert: values isSequenceable message: 'values is not a sequenceable collection'.
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   320
    values do:[:value | 
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   321
        self assertIsMetadata: value.  
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   322
    ].
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   323
feabf14b6c1d Initial support for generating (DWARF) debug info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 27
diff changeset
   324
    "Created: / 14-08-2015 / 08:50:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   325
    "Modified: / 14-09-2015 / 11:09:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
27
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   326
!
b26354bbff25 LLVM type system refactored to use a subclass per kind.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   327
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   328
assertIsString:aString 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   329
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   330
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   331
    self assert:(aString isSymbol or:[aString isSingleByteString]) message:'string is not a valid LLVM name (twine)'
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   332
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   333
    "Created: / 07-08-2015 / 18:38:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   334
    "Modified: / 14-09-2015 / 11:09:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   335
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   336
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   337
assertIsType: type
41
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   338
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   339
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   340
    self assert: type isLLVMType message: 'value is not an LLVMType'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   341
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   342
    "Created: / 10-08-2015 / 06:26:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   343
    "Modified: / 14-09-2015 / 11:09:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
41
e4cbc8e75207 Added testing and assestion methods to test metadata nodes for their type
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   344
    "Modified (format): / 17-09-2015 / 16:51:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   345
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   346
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   347
assertIsTypeArray: types
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   348
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   349
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   350
    self assert: types isSequenceable message: 'types is not a sequenceable collection'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   351
    types do:[:type | 
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   352
        self assertIsType: type.  
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   353
    ].
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   354
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   355
    "Created: / 10-08-2015 / 17:08:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   356
    "Modified: / 14-09-2015 / 11:09:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   357
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   358
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   359
assertIsValue: value
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   360
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   361
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   362
    self assert: value isLLVMValue message: 'value is not an LLVMValue'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   363
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   364
    "Created: / 08-08-2015 / 03:11:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   365
    "Modified: / 14-09-2015 / 11:09:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   366
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   367
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   368
assertIsValue: value ofKind: kind
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   369
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   370
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   371
    self assert: value isLLVMValue message: 'value is not an LLVMValue'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   372
    self assert: value type kind = kind message: 'value has incorrect kind'
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   373
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   374
    "Created: / 10-08-2015 / 17:40:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   375
    "Modified: / 14-09-2015 / 11:09:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   376
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   377
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   378
assertIsValue: value ofType: type
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   379
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   380
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   381
    self assert: value isLLVMValue message: 'value is not an LLVMValue'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   382
    self assert: value type = type message: 'value has incorrect type'
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   383
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   384
    "Created: / 08-08-2015 / 02:49:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   385
    "Modified: / 14-09-2015 / 11:09:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   386
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   387
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   388
assertIsValueArray: values
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   389
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   390
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   391
    self assert: values isSequenceable message: 'values is not a sequenceable collection'.
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   392
    values do:[:value | 
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   393
        self assertIsValue: value.  
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   394
    ].
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   395
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   396
    "Created: / 10-08-2015 / 18:56:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   397
    "Modified: / 14-09-2015 / 11:09:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   398
!
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   399
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   400
assertIsValueOfSameType:value1 as:value2 
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   401
    <resource: #skipInDebuggersWalkBack>
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   402
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   403
    self assert: value1 type = value2 type message:'types of values differ!!'
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   404
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   405
    "Created: / 07-08-2015 / 18:37:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
37
0933f973bc22 Add assertion to LLVMModule>>newWithName: to check for nil name. Fixed skip-in-debugger pragma (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 33
diff changeset
   406
    "Modified: / 14-09-2015 / 11:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
24
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   407
! !
7e7ddd55174c Added support for intrinsics.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14
diff changeset
   408