aboutsummaryrefslogtreecommitdiff
path: root/src/server/database/Database/QueryResult.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-04-25 19:54:38 +0200
committerOvahlord <dreadkiller@gmx.de>2025-05-11 11:41:28 +0200
commit6c6e147ba9b02d2adbf425f8f8b1371c4151fc67 (patch)
treeede0fd96b6fb6213b7c08700843b44588e77cdac /src/server/database/Database/QueryResult.cpp
parent4eaa67e0a65c3956005dab2946312924e8e3e968 (diff)
Core/Database: Added very simple macro to create named query result field accessors
(cherry picked from commit 29a680a1c264e5c8858b387fce4f6472a6d70a7e)
Diffstat (limited to 'src/server/database/Database/QueryResult.cpp')
-rw-r--r--src/server/database/Database/QueryResult.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/server/database/Database/QueryResult.cpp b/src/server/database/Database/QueryResult.cpp
index 0c35ac6688d..99f81ae7ec6 100644
--- a/src/server/database/Database/QueryResult.cpp
+++ b/src/server/database/Database/QueryResult.cpp
@@ -652,6 +652,13 @@ QueryResultFieldMetadata const& ResultSet::GetFieldMetadata(std::size_t index) c
return _fieldMetadata[index];
}
+QueryResultFieldMetadata const& ResultSet::GetFieldMetadata(Trinity::DB::FieldLookupByAliasKey const& alias) const
+{
+ auto itr = _fieldIndexByAlias.find(alias);
+ ASSERT(itr != _fieldIndexByAlias.end());
+ return _fieldMetadata[itr->second];
+}
+
Field* PreparedResultSet::Fetch() const
{
ASSERT(m_rowPosition < m_rowCount);
@@ -678,3 +685,10 @@ QueryResultFieldMetadata const& PreparedResultSet::GetFieldMetadata(std::size_t
ASSERT(index < std::size_t(m_fieldCount));
return m_fieldMetadata[index];
}
+
+QueryResultFieldMetadata const& PreparedResultSet::GetFieldMetadata(Trinity::DB::FieldLookupByAliasKey const& alias) const
+{
+ auto itr = m_fieldIndexByAlias.find(alias);
+ ASSERT(itr != m_fieldIndexByAlias.end());
+ return m_fieldMetadata[itr->second];
+}