Class: LLVM::Instruction
Direct Known Subclasses
Class Method Summary collapse
Instance Method Summary collapse
- #inspect ⇒ Object
-
#next ⇒ Object
Returns the next instruction after this one.
- #opcode ⇒ Object
-
#parent ⇒ Object
Returns the parent of the instruction (a BasicBlock).
-
#previous ⇒ Object
Returns the previous instruction before this one.
Methods inherited from User
Methods inherited from Value
#add_attribute, #allocated_type, #constant?, #dump, from_ptr_kind, #global_parent, #kind, #name, #name=, #null?, #remove_attribute, to_ptr, #to_s, #type, type, #undefined?
Methods included from PointerIdentity
Class Method Details
.from_ptr(ptr) ⇒ Object
1137 1138 1139 1140 |
# File 'lib/llvm/core/value.rb', line 1137 def self.from_ptr(ptr) kind = C.get_value_kind(ptr) kind == :instruction ? super : LLVM::Value.from_ptr_kind(ptr) end |
Instance Method Details
#inspect ⇒ Object
1164 1165 1166 |
# File 'lib/llvm/core/value.rb', line 1164 def inspect { self.class.name => { opcode: opcode, ptr: @ptr } }.to_s end |
#next ⇒ Object
Returns the next instruction after this one.
1149 1150 1151 1152 |
# File 'lib/llvm/core/value.rb', line 1149 def next ptr = C.get_next_instruction(self) LLVM::Instruction.from_ptr(ptr) unless ptr.null? end |
#opcode ⇒ Object
1160 1161 1162 |
# File 'lib/llvm/core/value.rb', line 1160 def opcode C.get_instruction_opcode(self) end |
#parent ⇒ Object
Returns the parent of the instruction (a BasicBlock).
1143 1144 1145 1146 |
# File 'lib/llvm/core/value.rb', line 1143 def parent ptr = C.get_instruction_parent(self) LLVM::BasicBlock.from_ptr(ptr) unless ptr.null? end |
#previous ⇒ Object
Returns the previous instruction before this one.
1155 1156 1157 1158 |
# File 'lib/llvm/core/value.rb', line 1155 def previous ptr = C.get_previous_instruction(self) LLVM::Instruction.from_ptr(ptr) unless ptr.null? end |