Goose  Artifact [5db552f0bf]

Artifact 5db552f0bf6c9c8c83b3805214ce2475d34a92d15157a9fb23c12efff326c808:

  • 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)

#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