You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.6 KiB
55 lines
1.6 KiB
From c4f60df10a2716c94d30462a118f60d916d537a2 Mon Sep 17 00:00:00 2001
|
|
From: Lennart Poettering <lennart@poettering.net>
|
|
Date: Fri, 9 Nov 2018 11:38:12 +0100
|
|
Subject: [PATCH] format-table: add calls to query the data in a specific cell
|
|
|
|
(cherry picked from commit 62d99b39709f903f8a66a9aae757deb5546a53eb)
|
|
|
|
Related: #1689832
|
|
---
|
|
src/basic/format-table.c | 22 ++++++++++++++++++++++
|
|
src/basic/format-table.h | 3 +++
|
|
2 files changed, 25 insertions(+)
|
|
|
|
diff --git a/src/basic/format-table.c b/src/basic/format-table.c
|
|
index 3fcb97475c..0a1777e9a2 100644
|
|
--- a/src/basic/format-table.c
|
|
+++ b/src/basic/format-table.c
|
|
@@ -1438,3 +1438,25 @@ TableCell *table_get_cell(Table *t, size_t row, size_t column) {
|
|
|
|
return TABLE_INDEX_TO_CELL(i);
|
|
}
|
|
+
|
|
+const void *table_get(Table *t, TableCell *cell) {
|
|
+ TableData *d;
|
|
+
|
|
+ assert(t);
|
|
+
|
|
+ d = table_get_data(t, cell);
|
|
+ if (!d)
|
|
+ return NULL;
|
|
+
|
|
+ return d->data;
|
|
+}
|
|
+
|
|
+const void* table_get_at(Table *t, size_t row, size_t column) {
|
|
+ TableCell *cell;
|
|
+
|
|
+ cell = table_get_cell(t, row, column);
|
|
+ if (!cell)
|
|
+ return NULL;
|
|
+
|
|
+ return table_get(t, cell);
|
|
+}
|
|
diff --git a/src/basic/format-table.h b/src/basic/format-table.h
|
|
index 40fea79f78..a2bb2e0846 100644
|
|
--- a/src/basic/format-table.h
|
|
+++ b/src/basic/format-table.h
|
|
@@ -68,3 +68,6 @@ size_t table_get_rows(Table *t);
|
|
size_t table_get_columns(Table *t);
|
|
|
|
TableCell *table_get_cell(Table *t, size_t row, size_t column);
|
|
+
|
|
+const void *table_get(Table *t, TableCell *cell);
|
|
+const void *table_get_at(Table *t, size_t row, size_t column);
|