Skip to content

Commit cd388dc

Browse files
committed
move pio klass definitions to file.c
1 parent ca9553d commit cd388dc

File tree

2 files changed

+19
-23
lines changed

2 files changed

+19
-23
lines changed

src/utils/file.c

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3924,26 +3924,35 @@ fio_communicate(int in, int out)
39243924
}
39253925

39263926
// CLASSES
3927+
39273928
typedef struct pioLocalDrive
39283929
{
39293930
} pioLocalDrive;
3931+
#define kls__pioLocalDrive iface__pioDrive, iface(pioDrive)
3932+
fobj_klass(pioLocalDrive);
39303933

39313934
typedef struct pioRemoteDrive
39323935
{
39333936
} pioRemoteDrive;
3937+
#define kls__pioRemoteDrive iface__pioDrive, iface(pioDrive)
3938+
fobj_klass(pioRemoteDrive);
39343939

39353940
typedef struct pioFile
39363941
{
39373942
const char *path;
39383943
int flags;
39393944
bool closed;
39403945
} pioFile;
3946+
#define kls__pioFile mth(fobjDispose)
3947+
fobj_klass(pioFile);
39413948

39423949
typedef struct pioLocalFile
39433950
{
39443951
pioFile p;
39453952
int fd;
39463953
} pioLocalFile;
3954+
#define kls__pioLocalFile iface__pioFile, iface(pioFile)
3955+
fobj_klass(pioLocalFile);
39473956

39483957
typedef struct pioRemoteFile
39493958
{
@@ -3957,6 +3966,9 @@ typedef struct pioRemoteFile
39573966
void* asyncChunk;
39583967
ft_bytes_t chunkRest;
39593968
} pioRemoteFile;
3969+
#define kls__pioRemoteFile iface__pioFile, iface(pioFile), \
3970+
mth(pioSetAsync, pioAsyncRead, pioAsyncWrite, pioAsyncError)
3971+
fobj_klass(pioRemoteFile);
39603972

39613973
typedef struct pioReadFilter {
39623974
pioRead_i wrapped;
@@ -3967,6 +3979,8 @@ typedef struct pioReadFilter {
39673979
bool eof;
39683980
bool finished;
39693981
} pioReadFilter;
3982+
#define kls__pioReadFilter mth(pioRead, pioClose)
3983+
fobj_klass(pioReadFilter);
39703984

39713985
typedef struct pioWriteFilter {
39723986
pioWriteFlush_i wrapped;
@@ -3975,6 +3989,9 @@ typedef struct pioWriteFilter {
39753989
size_t capa;
39763990
bool finished;
39773991
} pioWriteFilter;
3992+
#define kls__pioWriteFilter iface__pioWriteFlush, iface(pioWriteFlush), \
3993+
mth(pioClose)
3994+
fobj_klass(pioWriteFilter);
39783995

39793996
#ifdef HAVE_LIBZ
39803997
typedef struct pioGZCompress {
@@ -4008,8 +4025,6 @@ pioDriveForLocation(fio_location loc)
40084025
}
40094026

40104027
/* Base physical file type */
4011-
#define kls__pioFile mth(fobjDispose)
4012-
fobj_klass(pioFile);
40134028

40144029
static void
40154030
pioFile_fobjDispose(VSelf)

src/utils/file.h

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -270,21 +270,12 @@ fobj_method(pioListDir);
270270
fobj_method(pioRemoveDir);
271271

272272
#define iface__pioDrive mth(pioOpen, pioStat, pioRemove, pioRename), \
273-
mth(pioExists, pioGetCRC32, pioIsRemote, pioListDir, pioRemoveDir)
273+
mth(pioExists, pioGetCRC32, pioIsRemote), \
274+
mth(pioListDir, pioRemoveDir)
274275
fobj_iface(pioDrive);
275276

276-
#define kls__pioLocalDrive iface__pioDrive, iface(pioDrive)
277-
#define kls__pioRemoteDrive iface__pioDrive, iface(pioDrive)
278-
fobj_klass(pioLocalDrive);
279-
fobj_klass(pioRemoteDrive);
280-
281277
extern pioDrive_i pioDriveForLocation(fio_location location);
282278

283-
#define pioFile__common_methods mth(pioRead, pioWrite, pioFlush, pioTruncate, pioClose)
284-
285-
#define kls__pioLocalFile iface__pioFile, iface(pioFile)
286-
fobj_klass(pioLocalFile);
287-
288279
#define mth__pioSetAsync err_i, (bool, async)
289280
#define mth__pioSetAsync__optional() (async, true)
290281
#define mth__pioAsyncRead size_t, (ft_bytes_t, buf), (err_i*, err)
@@ -295,10 +286,6 @@ fobj_method(pioAsyncRead);
295286
fobj_method(pioAsyncWrite);
296287
fobj_method(pioAsyncError);
297288

298-
#define kls__pioRemoteFile iface__pioFile, iface(pioFile), \
299-
mth(pioSetAsync, pioAsyncRead, pioAsyncWrite, pioAsyncError)
300-
fobj_klass(pioRemoteFile);
301-
302289
// Filter
303290
typedef struct pioTransformResult {
304291
size_t consumed;
@@ -315,12 +302,6 @@ fobj_method(pioFinish);
315302
#define iface__pioFilter mth(pioTransform, pioFinish)
316303
fobj_iface(pioFilter);
317304

318-
#define kls__pioReadFilter mth(pioRead, pioClose)
319-
#define kls__pioWriteFilter iface__pioWriteFlush, iface(pioWriteFlush), \
320-
mth(pioClose)
321-
fobj_klass(pioReadFilter);
322-
fobj_klass(pioWriteFilter);
323-
324305
extern pioWriteFlush_i pioWrapWriteFilter(pioWriteFlush_i fl,
325306
pioFilter_i flt,
326307
size_t buf_size);

0 commit comments

Comments
 (0)