diff options
author | John Hodge <tpg@mutabah.net> | 2016-03-20 12:29:44 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-03-20 12:29:44 +0800 |
commit | b79e71e5f11e14516f13ea2f8437d5deaa10e653 (patch) | |
tree | 3097c0251c83e32e4e673a840f5708110a8adc4c /src/ast/generics.hpp | |
parent | 0ee80748a3dcb97f308e9b0b71c22d28868d12cf (diff) | |
download | mrust-b79e71e5f11e14516f13ea2f8437d5deaa10e653.tar.gz |
Tagged Union - Rework to remove indirection
Diffstat (limited to 'src/ast/generics.hpp')
-rw-r--r-- | src/ast/generics.hpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/ast/generics.hpp b/src/ast/generics.hpp index ad205a21..288de0a3 100644 --- a/src/ast/generics.hpp +++ b/src/ast/generics.hpp @@ -33,36 +33,36 @@ public: TAGGED_UNION_EX( GenericBound, (: public Serialisable), Lifetime, ( // Lifetime bound: 'test must be valid for 'bound - (Lifetime, ( + (Lifetime, struct { ::std::string test; ::std::string bound; - )), + }), // Type lifetime bound - (TypeLifetime, ( + (TypeLifetime, struct { TypeRef type; ::std::string bound; - )), + }), // Standard trait bound: "Type: [for<'a>] Trait" - (IsTrait, ( + (IsTrait, struct { TypeRef type; ::std::vector< ::std::string> hrls; // Higher-ranked lifetimes AST::Path trait; - )), + }), // Removed trait bound: "Type: ?Trait" - (MaybeTrait, ( + (MaybeTrait, struct { TypeRef type; AST::Path trait; - )), + }), // Negative trait bound: "Type: !Trait" - (NotTrait, ( + (NotTrait, struct { TypeRef type; AST::Path trait; - )), + }), // Type equality: "Type = Replacement" - (Equality, ( + (Equality, struct { TypeRef type; TypeRef replacement; - )) + }) ), (), (), |