Ignore:
Timestamp:
May 25, 2017, 12:55:12 PM (4 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
aaron-thesis, arm-eh, cleanup-dtors, deferred_resn, demangler, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, resolv-new, with_gc
Children:
58daf53, 84d58c5, cc38669
Parents:
bc37a83 (diff), e883a4b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg2:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/libcfa/containers/result

    rbc37a83 ra4943d8  
    1818#define RESULT_H
    1919
     20#include <stdbool.h>
    2021
    2122// DO NOT USE DIRECTLY!
    2223forall(otype T, otype E)
     24union inner_result{
     25        T value;
     26        E error;
     27};
     28
     29forall(otype T, otype E)
    2330struct result {
    24         _Bool has_value;
    25         union {
    26                 T value;
    27                 E error;
    28         };
     31        bool has_value;
     32        inner_result(T, E);
    2933};
    3034
     
    4650
    4751forall(otype T, otype E)
    48 _Bool ?!=?(result(T, E) this, zero_t);
     52bool ?!=?(result(T, E) this, zero_t);
    4953
    5054forall(otype T, otype E)
     
    5559
    5660forall(otype T, otype E)
    57 _Bool has_value(result(T, E) * this);
     61bool has_value(result(T, E) * this);
    5862
    5963forall(otype T, otype E)
Note: See TracChangeset for help on using the changeset viewer.