145 typedef struct BlockingOperator BlockingOperator;
188 typedef struct Entry Entry;
190 typedef struct HashMap_String__String HashMap_String__String;
201 typedef struct Metadata Metadata;
206 typedef struct OperatorInfo OperatorInfo;
215 typedef struct StdReader StdReader;
226 typedef struct opendal_bytes {
256 typedef struct opendal_error {
258 struct opendal_bytes message;
269 typedef struct opendal_entry {
280 typedef struct opendal_result_lister_next {
284 struct opendal_entry *entry;
288 struct opendal_error *error;
289 } opendal_result_lister_next;
300 typedef struct opendal_lister {
315 typedef struct opendal_metadata {
320 struct Metadata *inner;
336 typedef struct opendal_operator {
341 const struct BlockingOperator *ptr;
356 typedef struct opendal_result_operator_new {
360 struct opendal_operator *op;
364 struct opendal_error *error;
365 } opendal_result_operator_new;
377 typedef struct opendal_operator_options {
382 struct HashMap_String__String *inner;
383 } opendal_operator_options;
393 typedef struct opendal_result_read {
397 struct opendal_bytes *data;
401 struct opendal_error *error;
402 } opendal_result_read;
410 typedef struct opendal_reader {
411 struct StdReader *inner;
420 typedef struct opendal_result_operator_reader {
424 struct opendal_reader *reader;
428 struct opendal_error *error;
429 } opendal_result_operator_reader;
441 typedef struct opendal_result_is_exist {
449 struct opendal_error *error;
450 } opendal_result_is_exist;
459 typedef struct opendal_result_stat {
463 struct opendal_metadata *meta;
467 struct opendal_error *error;
468 } opendal_result_stat;
477 typedef struct opendal_result_list {
481 struct opendal_lister *lister;
485 struct opendal_error *error;
486 } opendal_result_list;
492 typedef struct opendal_operator_info {
493 struct OperatorInfo *inner;
494 } opendal_operator_info;
500 typedef struct opendal_capability {
508 bool stat_with_if_match;
512 bool stat_with_if_none_match;
520 bool read_with_if_match;
524 bool read_with_if_none_match;
528 bool read_with_override_cache_control;
532 bool read_with_override_content_disposition;
536 bool read_with_override_content_type;
544 bool write_can_multi;
548 bool write_can_empty;
552 bool write_can_append;
556 bool write_with_content_type;
560 bool write_with_content_disposition;
564 bool write_with_cache_control;
572 uintptr_t write_multi_max_size;
580 uintptr_t write_multi_min_size;
588 uintptr_t write_multi_align_size;
596 uintptr_t write_total_max_size;
620 bool list_with_limit;
624 bool list_with_start_after;
628 bool list_with_recursive;
658 uintptr_t batch_max_operations;
663 } opendal_capability;
670 typedef struct opendal_result_reader_read {
678 struct opendal_error *error;
679 } opendal_result_reader_read;
688 void opendal_error_free(
struct opendal_error *ptr);
699 struct opendal_result_lister_next opendal_lister_next(const struct opendal_lister *
self);
704 void opendal_lister_free(
const struct opendal_lister *p);
709 void opendal_metadata_free(
struct opendal_metadata *ptr);
724 uint64_t opendal_metadata_content_length(
const struct opendal_metadata *
self);
739 bool opendal_metadata_is_file(
const struct opendal_metadata *
self);
759 bool opendal_metadata_is_dir(
const struct opendal_metadata *
self);
774 int64_t opendal_metadata_last_modified_ms(
const struct opendal_metadata *
self);
793 void opendal_operator_free(
const struct opendal_operator *op);
834 struct opendal_result_operator_new opendal_operator_new(const char *scheme,
835 const struct opendal_operator_options *options);
883 struct opendal_error *opendal_operator_write(
const struct opendal_operator *op,
885 struct opendal_bytes bytes);
927 struct opendal_result_read opendal_operator_read(const struct opendal_operator *op,
968 struct opendal_result_operator_reader opendal_operator_reader(const struct opendal_operator *op,
1013 struct opendal_error *opendal_operator_delete(
const struct opendal_operator *op,
const char *path);
1054 struct opendal_result_is_exist opendal_operator_is_exist(const struct opendal_operator *op,
1095 struct opendal_result_stat opendal_operator_stat(const struct opendal_operator *op,
1148 struct opendal_result_list opendal_operator_list(const struct opendal_operator *op,
1186 struct opendal_error *opendal_operator_create_dir(
const struct opendal_operator *op,
1232 struct opendal_error *opendal_operator_rename(
const struct opendal_operator *op,
1279 struct opendal_error *opendal_operator_copy(
const struct opendal_operator *op,
1301 struct opendal_operator_info *opendal_operator_info_new(
const struct opendal_operator *op);
1306 void opendal_operator_info_free(
struct opendal_operator_info *ptr);
1313 char *opendal_operator_info_get_scheme(
const struct opendal_operator_info *
self);
1320 char *opendal_operator_info_get_root(
const struct opendal_operator_info *
self);
1328 char *opendal_operator_info_get_name(
const struct opendal_operator_info *
self);
1333 struct opendal_capability opendal_operator_info_get_full_capability(const struct opendal_operator_info *
self);
1338 struct opendal_capability opendal_operator_info_get_native_capability(const struct opendal_operator_info *
self);
1343 void opendal_bytes_free(
struct opendal_bytes *bs);
1353 struct opendal_operator_options *opendal_operator_options_new(
void);
1374 void opendal_operator_options_set(
struct opendal_operator_options *
self,
1381 void opendal_operator_options_free(
const struct opendal_operator_options *options);
1390 char *opendal_entry_path(
const struct opendal_entry *
self);
1401 char *opendal_entry_name(
const struct opendal_entry *
self);
1406 void opendal_entry_free(
struct opendal_entry *ptr);
1411 struct opendal_result_reader_read opendal_reader_read(const struct opendal_reader *reader,
1418 void opendal_reader_free(
struct opendal_reader *ptr);
struct BlockingLister BlockingLister
Definition: opendal.h:85
opendal_code
The error code for all opendal APIs in C binding.
Definition: opendal.h:33
@ OPENDAL_UNSUPPORTED
Definition: opendal.h:41
@ OPENDAL_NOT_FOUND
Definition: opendal.h:49
@ OPENDAL_IS_A_DIRECTORY
Definition: opendal.h:57
@ OPENDAL_UNEXPECTED
Definition: opendal.h:37
@ OPENDAL_PERMISSION_DENIED
Definition: opendal.h:53
@ OPENDAL_ALREADY_EXISTS
Definition: opendal.h:65
@ OPENDAL_IS_SAME_FILE
Definition: opendal.h:73
@ OPENDAL_NOT_A_DIRECTORY
Definition: opendal.h:61
@ OPENDAL_RATE_LIMITED
Definition: opendal.h:69
@ OPENDAL_CONFIG_INVALID
Definition: opendal.h:45