Goose  Diff

Differences From Artifact [47467320b9]:

  • File bs/builtins/types/template/build.h — part of check-in [cf3bb178ea] at 2019-05-25 10:44:31 on branch trunk — Domains: refactored functions to use the new representation. (user: achavasse size: 652)

To Artifact [5db552f0bf]:

  • File bs/builtins/types/template/build.h — part of check-in [ef1e94f44d] at 2019-06-29 11:40:08 on branch trunk — Added a domain specifier in function and template function types. (user: achavasse size: 692)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#ifndef EMPATHY_BUILTINS_TEMPLATE_BUILD_H
#define EMPATHY_BUILTINS_TEMPLATE_BUILD_H

namespace empathy::builtins
{
    extern optional< TDecl > BuildTDecl( const Context& c, const Term& typeTExpr, const StringId& name );
    extern TFuncType BuildTFuncType( const Value& returnType, const Value& params );
    extern optional< Term > BuildTFuncSignature( const Context& c, const TFuncType& tft );
    extern optional< Value > BuildTFunc( const Context& c, const Term& identity, const Value& returnType, const Value& params, pvec&& body );

    extern optional< Term > BuildArgPatternFromTFuncType( const Context& c, const Value& tfuncType );
}

#endif






|

|





1
2
3
4
5
6
7
8
9
10
11
12
13
14
#ifndef EMPATHY_BUILTINS_TEMPLATE_BUILD_H
#define EMPATHY_BUILTINS_TEMPLATE_BUILD_H

namespace empathy::builtins
{
    extern optional< TDecl > BuildTDecl( const Context& c, const Term& typeTExpr, const StringId& name );
    extern TFuncType BuildTFuncType( const Term& domain, const Value& returnType, const Value& params );
    extern optional< Term > BuildTFuncSignature( const Context& c, const TFuncType& tft );
    extern optional< Value > BuildTFunc( const Context& c, const Term& identity, const Term& domain, const Value& returnType, const Value& params, pvec&& body );

    extern optional< Term > BuildArgPatternFromTFuncType( const Context& c, const Value& tfuncType );
}

#endif