Skip to content

Commit 6014639

Browse files
pks-tgitster
authored andcommitted
reftable/generic: drop interface
The `reftable_table` interface provides a generic infrastructure that can abstract away whether the underlying table is a single table, or a merged table. This abstraction can make it rather hard to reason about the code. We didn't ever use it to implement the reftable backend, and with the preceding patches in this patch series we in fact don't use it at all anymore. Furthermore, it became somewhat useless with the recent refactorings that made it possible to seek reftable iterators multiple times, as these now provide generic access to tables for us. The interface is thus redundant and only brings unnecessary complexity with it. Remove the `struct reftable_table` interface and its associated functions. Signed-off-by: Patrick Steinhardt <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 8919123 commit 6014639

File tree

12 files changed

+0
-245
lines changed

12 files changed

+0
-245
lines changed

Makefile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2674,7 +2674,6 @@ REFTABLE_OBJS += reftable/merged.o
26742674
REFTABLE_OBJS += reftable/pq.o
26752675
REFTABLE_OBJS += reftable/reader.o
26762676
REFTABLE_OBJS += reftable/record.o
2677-
REFTABLE_OBJS += reftable/generic.o
26782677
REFTABLE_OBJS += reftable/stack.o
26792678
REFTABLE_OBJS += reftable/tree.o
26802679
REFTABLE_OBJS += reftable/writer.o

reftable/generic.c

Lines changed: 0 additions & 77 deletions
This file was deleted.

reftable/generic.h

Lines changed: 0 additions & 27 deletions
This file was deleted.

reftable/iter.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ license that can be found in the LICENSE file or at
1111
#include "system.h"
1212

1313
#include "block.h"
14-
#include "generic.h"
1514
#include "constants.h"
1615
#include "reader.h"
1716
#include "reftable-error.h"

reftable/iter.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ license that can be found in the LICENSE file or at
1414
#include "record.h"
1515

1616
#include "reftable-iterator.h"
17-
#include "reftable-generic.h"
1817

1918
/*
2019
* The virtual function table for implementing generic reftable iterators.

reftable/merged.c

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ license that can be found in the LICENSE file or at
1313
#include "pq.h"
1414
#include "reader.h"
1515
#include "record.h"
16-
#include "generic.h"
1716
#include "reftable-merged.h"
1817
#include "reftable-error.h"
1918
#include "system.h"
@@ -270,40 +269,3 @@ uint32_t reftable_merged_table_hash_id(struct reftable_merged_table *mt)
270269
{
271270
return mt->hash_id;
272271
}
273-
274-
static void reftable_merged_table_init_iter_void(void *tab,
275-
struct reftable_iterator *it,
276-
uint8_t typ)
277-
{
278-
merged_table_init_iter(tab, it, typ);
279-
}
280-
281-
static uint32_t reftable_merged_table_hash_id_void(void *tab)
282-
{
283-
return reftable_merged_table_hash_id(tab);
284-
}
285-
286-
static uint64_t reftable_merged_table_min_update_index_void(void *tab)
287-
{
288-
return reftable_merged_table_min_update_index(tab);
289-
}
290-
291-
static uint64_t reftable_merged_table_max_update_index_void(void *tab)
292-
{
293-
return reftable_merged_table_max_update_index(tab);
294-
}
295-
296-
static struct reftable_table_vtable merged_table_vtable = {
297-
.init_iter = reftable_merged_table_init_iter_void,
298-
.hash_id = reftable_merged_table_hash_id_void,
299-
.min_update_index = reftable_merged_table_min_update_index_void,
300-
.max_update_index = reftable_merged_table_max_update_index_void,
301-
};
302-
303-
void reftable_table_from_merged_table(struct reftable_table *tab,
304-
struct reftable_merged_table *merged)
305-
{
306-
assert(!tab->ops);
307-
tab->ops = &merged_table_vtable;
308-
tab->table_arg = merged;
309-
}

reftable/reader.c

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,9 @@ license that can be found in the LICENSE file or at
1111
#include "system.h"
1212
#include "block.h"
1313
#include "constants.h"
14-
#include "generic.h"
1514
#include "iter.h"
1615
#include "record.h"
1716
#include "reftable-error.h"
18-
#include "reftable-generic.h"
1917

2018
uint64_t block_source_size(struct reftable_block_source *source)
2119
{
@@ -759,45 +757,6 @@ uint64_t reftable_reader_min_update_index(struct reftable_reader *r)
759757
return r->min_update_index;
760758
}
761759

762-
/* generic table interface. */
763-
764-
static void reftable_reader_init_iter_void(void *tab,
765-
struct reftable_iterator *it,
766-
uint8_t typ)
767-
{
768-
reader_init_iter(tab, it, typ);
769-
}
770-
771-
static uint32_t reftable_reader_hash_id_void(void *tab)
772-
{
773-
return reftable_reader_hash_id(tab);
774-
}
775-
776-
static uint64_t reftable_reader_min_update_index_void(void *tab)
777-
{
778-
return reftable_reader_min_update_index(tab);
779-
}
780-
781-
static uint64_t reftable_reader_max_update_index_void(void *tab)
782-
{
783-
return reftable_reader_max_update_index(tab);
784-
}
785-
786-
static struct reftable_table_vtable reader_vtable = {
787-
.init_iter = reftable_reader_init_iter_void,
788-
.hash_id = reftable_reader_hash_id_void,
789-
.min_update_index = reftable_reader_min_update_index_void,
790-
.max_update_index = reftable_reader_max_update_index_void,
791-
};
792-
793-
void reftable_table_from_reader(struct reftable_table *tab,
794-
struct reftable_reader *reader)
795-
{
796-
assert(!tab->ops);
797-
tab->ops = &reader_vtable;
798-
tab->table_arg = reader;
799-
}
800-
801760
int reftable_reader_print_blocks(const char *tablename)
802761
{
803762
struct {

reftable/reftable-generic.h

Lines changed: 0 additions & 44 deletions
This file was deleted.

reftable/reftable-merged.h

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ license that can be found in the LICENSE file or at
2626
/* A merged table is implements seeking/iterating over a stack of tables. */
2727
struct reftable_merged_table;
2828

29-
/* A generic reftable; see below. */
30-
struct reftable_table;
3129
struct reftable_reader;
3230

3331
/*
@@ -60,8 +58,4 @@ void reftable_merged_table_free(struct reftable_merged_table *m);
6058
/* return the hash ID of the merged table. */
6159
uint32_t reftable_merged_table_hash_id(struct reftable_merged_table *m);
6260

63-
/* create a generic table from reftable_merged_table */
64-
void reftable_table_from_merged_table(struct reftable_table *tab,
65-
struct reftable_merged_table *table);
66-
6761
#endif

reftable/reftable-reader.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,6 @@
2323
/* The reader struct is a handle to an open reftable file. */
2424
struct reftable_reader;
2525

26-
/* Generic table. */
27-
struct reftable_table;
28-
2926
/* reftable_new_reader opens a reftable for reading. If successful,
3027
* returns 0 code and sets pp. The name is used for creating a
3128
* stack. Typically, it is the basename of the file. The block source
@@ -60,10 +57,6 @@ uint64_t reftable_reader_max_update_index(struct reftable_reader *r);
6057
/* return the min_update_index for a table */
6158
uint64_t reftable_reader_min_update_index(struct reftable_reader *r);
6259

63-
/* creates a generic table from a file reader. */
64-
void reftable_table_from_reader(struct reftable_table *tab,
65-
struct reftable_reader *reader);
66-
6760
/* print blocks onto stdout for debugging. */
6861
int reftable_reader_print_blocks(const char *tablename);
6962

reftable/stack.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ license that can be found in the LICENSE file or at
1414
#include "merged.h"
1515
#include "reader.h"
1616
#include "reftable-error.h"
17-
#include "reftable-generic.h"
1817
#include "reftable-record.h"
1918
#include "reftable-merged.h"
2019
#include "writer.h"

t/unit-tests/t-reftable-merged.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ license that can be found in the LICENSE file or at
1212
#include "reftable/merged.h"
1313
#include "reftable/reader.h"
1414
#include "reftable/reftable-error.h"
15-
#include "reftable/reftable-generic.h"
1615
#include "reftable/reftable-merged.h"
1716
#include "reftable/reftable-writer.h"
1817

0 commit comments

Comments
 (0)