note description: "Summary description for {TARGET_REGISTRY_ITERATOR}." author: "" date: "$Date$" revision: "$Revision$" class TARGET_REGISTRY_ITERATOR inherit MEMORY_STRUCTURE redefine is_equal end feature target: TARGET do create Result item_external (item, Result.item) end forth do forth_external (item) end is_equal (other_a: like Current): BOOLEAN do Result := is_equal_external (item, other_a.item) end feature {NONE} -- Externals item_external (item_a: POINTER; target_a: POINTER) external "C++ inline use %"llvm/Target/TargetRegistry.h%"" alias "[ *((llvm::Target *)$target_a) = **((llvm::TargetRegistry::iterator *)$item_a); ]" end forth_external (item_a: POINTER) external "C++ inline use %"llvm/Target/TargetRegistry.h%"" alias "[ (*((llvm::TargetRegistry::iterator *)$item_a))++; ]" end is_equal_external (item_a: POINTER; other_a: POINTER): BOOLEAN external "C++ inline use %"llvm/Target/TargetRegistry.h%"" alias "[ return *((llvm::TargetRegistry::iterator *)$item_a) == *((llvm::TargetRegistry::iterator *)$other_a); ]" end structure_size_external: INTEGER external "C++ inline use %"llvm/Target/TargetRegistry.h%"" alias "[ return sizeof (llvm::TargetRegistry::iterator); ]" end feature {NONE} -- Implementation structure_size: INTEGER do Result := structure_size_external end end