Skip to content

Commit 9b8cfc2

Browse files
author
svorenova
committed
Add function to retrieve a reference to the element type of a java array
1 parent 6e554d9 commit 9b8cfc2

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

jbmc/src/java_bytecode/java_types.cpp

+11
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,17 @@ typet java_array_element_type(const symbol_typet &array_type)
131131
return array_type.find_type(ID_C_element_type);
132132
}
133133

134+
/// Return a const reference to the element type of a given java array type
135+
/// \param array_type The java array type
136+
const typet &java_array_element_type_ref(const symbol_typet &array_type)
137+
{
138+
INVARIANT(
139+
is_java_array_tag(array_type.get_identifier()),
140+
"Symbol should have array tag");
141+
return array_type.find_type(ID_C_element_type);
142+
}
143+
144+
134145
/// See above
135146
/// \par parameters: Struct tag 'tag'
136147
/// \return True if the given struct is a Java array

jbmc/src/java_bytecode/java_types.h

+1
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,7 @@ symbol_typet java_classname(const std::string &);
206206

207207
reference_typet java_array_type(const char subtype);
208208
typet java_array_element_type(const symbol_typet &array_type);
209+
const typet &java_array_element_type_ref(const symbol_typet &array_type);
209210

210211
bool is_reference_type(char t);
211212

0 commit comments

Comments
 (0)