aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/elna/boot/symbol.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/elna/boot/symbol.h b/include/elna/boot/symbol.h
index 2c47fcc..40cbbc6 100644
--- a/include/elna/boot/symbol.h
+++ b/include/elna/boot/symbol.h
@@ -667,4 +667,14 @@ namespace elna::boot
* \return The base type, or an empty type.
*/
type get_range_base_type(const type& range);
+
+ /**
+ * Finds the type of a record field by name, following the base records.
+ *
+ * \param composite_type The record type to search in.
+ * \param field_name The name of the field to find.
+ * \return The field type, or an empty type if the type is not a record
+ * or has no field with this name.
+ */
+ type lookup_field(const type& composite_type, const std::string& field_name);
}