Goose  Diff

Differences From Artifact [f42c5e68d5]:

  • File bs/eir/tostring.h — part of check-in [51f288ba2a] at 2021-09-13 21:52:06 on branch trunk —
    • Implemented a generic wrapper for the simple native types that can be embedded in Terms
    • Added more specific overloads for the assignment operator that should work only on builtin types, so that library and user defined types will be able to choose whether they're copyable
    • The EIR representation for all builtin runtime types are now prefixed with "rt_type" to more easily write generic matching rules against them
    • EIR: Fixed long standing bugs in Enumerate and Decompose that surfaced because of the above
    • Miscellaneous code cleaning
    (user: achavasse size: 924)

To Artifact [fc3426630f]:

  • File bs/eir/tostring.h — part of check-in [6b3eee40c4] at 2021-09-25 15:53:33 on branch trunk — eir: implemented OrPattern term (user: achavasse size: 1123)

12
13
14
15
16
17
18



19
20
21
22
23
24
25
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28







+
+
+







    extern ostream& ToString( ostream& out, const LocationId& x );
    extern ostream& ToString( ostream& out, const string& x, char delim = '\'' );
    extern ostream& ToString( ostream& out, StringId x );
    extern ostream& ToString( ostream& out, const Delimiter& x );
    extern ostream& ToString( ostream& out, const Hole& x );
    extern ostream& ToString( ostream& out, const ptr< void >& x );
    extern ostream& ToString( ostream& out, const void* x );
    extern ostream& ToString( ostream& out, const AnyTerm& at );
    extern ostream& ToString( ostream& out, const VecOfLength& v );
    extern ostream& ToString( ostream& out, const OrPattern& o );
    extern ostream& ToString( ostream& out, const ptr< Vector >& v );

    extern ostream& ToString( ostream& out, const BigInt& t );
    extern ostream& ToString( ostream& out, const APSInt& t );
}

#endif