Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/bithenge/src/sequence.c

    r6cd10ac rb7fd2a0  
    5858
    5959typedef struct seq_node_ops {
    60         int (*get_transform)(seq_node_t *self, bithenge_transform_t **out,
     60        errno_t (*get_transform)(seq_node_t *self, bithenge_transform_t **out,
    6161            bithenge_int_t index);
    6262} seq_node_ops_t;
     
    7272}
    7373
    74 static int seq_node_field_offset(seq_node_t *self, aoff64_t *out, size_t index)
     74static errno_t seq_node_field_offset(seq_node_t *self, aoff64_t *out, size_t index)
    7575{
    7676        if (index == 0) {
     
    8383        for (; self->num_ends <= index; self->num_ends++) {
    8484                bithenge_transform_t *subxform;
    85                 int rc = self->ops->get_transform(self, &subxform,
     85                errno_t rc = self->ops->get_transform(self, &subxform,
    8686                    self->num_ends);
    8787                if (rc != EOK)
     
    136136}
    137137
    138 static int seq_node_subtransform(seq_node_t *self, bithenge_node_t **out,
     138static errno_t seq_node_subtransform(seq_node_t *self, bithenge_node_t **out,
    139139    size_t index)
    140140{
    141141        aoff64_t start_pos;
    142         int rc = seq_node_field_offset(self, &start_pos, index);
     142        errno_t rc = seq_node_field_offset(self, &start_pos, index);
    143143        if (rc != EOK)
    144144                return rc;
     
    194194        } else {
    195195                aoff64_t end_pos;
    196                 int rc = seq_node_field_offset(self, &end_pos, index + 1);
     196                errno_t rc = seq_node_field_offset(self, &end_pos, index + 1);
    197197                if (rc != EOK) {
    198198                        bithenge_transform_dec_ref(subxform);
     
    220220}
    221221
    222 static int seq_node_complete(seq_node_t *self, bool *out)
     222static errno_t seq_node_complete(seq_node_t *self, bool *out)
    223223{
    224224        aoff64_t blob_size, end_pos;
    225         int rc = bithenge_blob_size(self->blob, &blob_size);
     225        errno_t rc = bithenge_blob_size(self->blob, &blob_size);
    226226        if (rc != EOK)
    227227                return rc;
     
    251251}
    252252
    253 static int seq_node_init(seq_node_t *self, const seq_node_ops_t *ops,
     253static errno_t seq_node_init(seq_node_t *self, const seq_node_ops_t *ops,
    254254    bithenge_scope_t *scope, bithenge_blob_t *blob, bithenge_int_t num_xforms,
    255255    bool end_on_empty)
     
    319319}
    320320
    321 static int struct_node_for_each(bithenge_node_t *base,
     321static errno_t struct_node_for_each(bithenge_node_t *base,
    322322    bithenge_for_each_func_t func, void *data)
    323323{
    324         int rc = EOK;
     324        errno_t rc = EOK;
    325325        struct_node_t *self = node_as_struct(base);
    326326        bithenge_named_transform_t *subxforms =
     
    368368}
    369369
    370 static int struct_node_get(bithenge_node_t *base, bithenge_node_t *key,
     370static errno_t struct_node_get(bithenge_node_t *base, bithenge_node_t *key,
    371371    bithenge_node_t **out)
    372372{
    373373        struct_node_t *self = node_as_struct(base);
    374374
    375         int rc = ENOENT;
     375        errno_t rc = ENOENT;
    376376        if (bithenge_node_type(key) != BITHENGE_NODE_STRING)
    377377                goto end;
     
    455455};
    456456
    457 static int struct_node_get_transform(seq_node_t *base,
     457static errno_t struct_node_get_transform(seq_node_t *base,
    458458    bithenge_transform_t **out, bithenge_int_t index)
    459459{
     
    468468};
    469469
    470 static int struct_transform_make_node(struct_transform_t *self,
     470static errno_t struct_transform_make_node(struct_transform_t *self,
    471471    bithenge_node_t **out, bithenge_scope_t *scope, bithenge_blob_t *blob,
    472472    bool prefix)
     
    476476                return ENOMEM;
    477477
    478         int rc = bithenge_init_internal_node(struct_as_node(node),
     478        errno_t rc = bithenge_init_internal_node(struct_as_node(node),
    479479            &struct_node_ops);
    480480        if (rc != EOK) {
     
    513513}
    514514
    515 static int struct_transform_apply(bithenge_transform_t *base,
     515static errno_t struct_transform_apply(bithenge_transform_t *base,
    516516    bithenge_scope_t *scope, bithenge_node_t *in, bithenge_node_t **out)
    517517{
     
    523523}
    524524
    525 static int struct_transform_prefix_length(bithenge_transform_t *base,
     525static errno_t struct_transform_prefix_length(bithenge_transform_t *base,
    526526    bithenge_scope_t *scope, bithenge_blob_t *blob, aoff64_t *out)
    527527{
    528528        struct_transform_t *self = transform_as_struct(base);
    529529        bithenge_node_t *struct_node;
    530         int rc = struct_transform_make_node(self, &struct_node, scope, blob,
     530        errno_t rc = struct_transform_make_node(self, &struct_node, scope, blob,
    531531            true);
    532532        if (rc != EOK)
     
    539539}
    540540
    541 static int struct_transform_prefix_apply(bithenge_transform_t *base,
     541static errno_t struct_transform_prefix_apply(bithenge_transform_t *base,
    542542    bithenge_scope_t *scope, bithenge_blob_t *blob, bithenge_node_t **out_node,
    543543    aoff64_t *out_size)
    544544{
    545545        struct_transform_t *self = transform_as_struct(base);
    546         int rc = struct_transform_make_node(self, out_node, scope, blob,
     546        errno_t rc = struct_transform_make_node(self, out_node, scope, blob,
    547547            true);
    548548        if (rc != EOK)
     
    592592 * @param subtransforms The subtransforms and field names.
    593593 * @return EOK on success or an error code from errno.h. */
    594 int bithenge_new_struct(bithenge_transform_t **out,
     594errno_t bithenge_new_struct(bithenge_transform_t **out,
    595595    bithenge_named_transform_t *subtransforms)
    596596{
    597         int rc;
     597        errno_t rc;
    598598        struct_transform_t *self = malloc(sizeof(*self));
    599599        if (!self) {
     
    669669}
    670670
    671 static int repeat_node_for_each(bithenge_node_t *base,
     671static errno_t repeat_node_for_each(bithenge_node_t *base,
    672672    bithenge_for_each_func_t func, void *data)
    673673{
    674         int rc = EOK;
     674        errno_t rc = EOK;
    675675        repeat_node_t *self = node_as_repeat(base);
    676676
     
    712712}
    713713
    714 static int repeat_node_get(bithenge_node_t *base, bithenge_node_t *key,
     714static errno_t repeat_node_get(bithenge_node_t *base, bithenge_node_t *key,
    715715    bithenge_node_t **out)
    716716{
     
    743743};
    744744
    745 static int repeat_node_get_transform(seq_node_t *base,
     745static errno_t repeat_node_get_transform(seq_node_t *base,
    746746    bithenge_transform_t **out, bithenge_int_t index)
    747747{
     
    756756};
    757757
    758 static int repeat_transform_make_node(repeat_transform_t *self,
     758static errno_t repeat_transform_make_node(repeat_transform_t *self,
    759759    bithenge_node_t **out, bithenge_scope_t *scope, bithenge_blob_t *blob,
    760760    bool prefix)
     
    763763        if (self->expr != NULL) {
    764764                bithenge_node_t *count_node;
    765                 int rc = bithenge_expression_evaluate(self->expr, scope,
     765                errno_t rc = bithenge_expression_evaluate(self->expr, scope,
    766766                    &count_node);
    767767                if (rc != EOK)
     
    781781                return ENOMEM;
    782782
    783         int rc = bithenge_init_internal_node(repeat_as_node(node),
     783        errno_t rc = bithenge_init_internal_node(repeat_as_node(node),
    784784            &repeat_node_ops);
    785785        if (rc != EOK) {
     
    803803}
    804804
    805 static int repeat_transform_apply(bithenge_transform_t *base,
     805static errno_t repeat_transform_apply(bithenge_transform_t *base,
    806806    bithenge_scope_t *scope, bithenge_node_t *in, bithenge_node_t **out)
    807807{
     
    813813}
    814814
    815 static int repeat_transform_prefix_apply(bithenge_transform_t *base,
     815static errno_t repeat_transform_prefix_apply(bithenge_transform_t *base,
    816816    bithenge_scope_t *scope, bithenge_blob_t *blob, bithenge_node_t **out_node,
    817817    aoff64_t *out_size)
    818818{
    819819        repeat_transform_t *self = transform_as_repeat(base);
    820         int rc = repeat_transform_make_node(self, out_node, scope, blob, true);
     820        errno_t rc = repeat_transform_make_node(self, out_node, scope, blob, true);
    821821        if (rc != EOK)
    822822                return rc;
     
    871871 * May be NULL, in which case @a xform will be applied indefinitely.
    872872 * @return EOK on success or an error code from errno.h. */
    873 int bithenge_repeat_transform(bithenge_transform_t **out,
     873errno_t bithenge_repeat_transform(bithenge_transform_t **out,
    874874    bithenge_transform_t *xform, bithenge_expression_t *expr)
    875875{
    876         int rc;
     876        errno_t rc;
    877877        repeat_transform_t *self = malloc(sizeof(*self));
    878878        if (!self) {
     
    947947}
    948948
    949 static int do_while_node_for_each(bithenge_node_t *base,
     949static errno_t do_while_node_for_each(bithenge_node_t *base,
    950950    bithenge_for_each_func_t func, void *data)
    951951{
    952         int rc = EOK;
     952        errno_t rc = EOK;
    953953        do_while_node_t *self = node_as_do_while(base);
    954954
     
    10181018};
    10191019
    1020 static int do_while_node_get_transform(seq_node_t *base,
     1020static errno_t do_while_node_get_transform(seq_node_t *base,
    10211021    bithenge_transform_t **out, bithenge_int_t index)
    10221022{
     
    10311031};
    10321032
    1033 static int do_while_transform_make_node(do_while_transform_t *self,
     1033static errno_t do_while_transform_make_node(do_while_transform_t *self,
    10341034    bithenge_node_t **out, bithenge_scope_t *scope, bithenge_blob_t *blob)
    10351035{
     
    10381038                return ENOMEM;
    10391039
    1040         int rc = bithenge_init_internal_node(do_while_as_node(node),
     1040        errno_t rc = bithenge_init_internal_node(do_while_as_node(node),
    10411041            &do_while_node_ops);
    10421042        if (rc != EOK) {
     
    10611061}
    10621062
    1063 static int for_each_noop(bithenge_node_t *key, bithenge_node_t *value,
     1063static errno_t for_each_noop(bithenge_node_t *key, bithenge_node_t *value,
    10641064    void *data)
    10651065{
     
    10691069}
    10701070
    1071 static int do_while_transform_prefix_apply(bithenge_transform_t *base,
     1071static errno_t do_while_transform_prefix_apply(bithenge_transform_t *base,
    10721072    bithenge_scope_t *scope, bithenge_blob_t *blob, bithenge_node_t **out_node,
    10731073    aoff64_t *out_size)
    10741074{
    10751075        do_while_transform_t *self = transform_as_do_while(base);
    1076         int rc = do_while_transform_make_node(self, out_node, scope, blob);
     1076        errno_t rc = do_while_transform_make_node(self, out_node, scope, blob);
    10771077        if (rc != EOK)
    10781078                return rc;
     
    11161116 * determine whether there will be more.
    11171117 * @return EOK on success or an error code from errno.h. */
    1118 int bithenge_do_while_transform(bithenge_transform_t **out,
     1118errno_t bithenge_do_while_transform(bithenge_transform_t **out,
    11191119    bithenge_transform_t *xform, bithenge_expression_t *expr)
    11201120{
    1121         int rc;
     1121        errno_t rc;
    11221122        do_while_transform_t *self = malloc(sizeof(*self));
    11231123        if (!self) {
Note: See TracChangeset for help on using the changeset viewer.