Goose  Artifact [7656582fdd]

Artifact 7656582fdd6f9067a86e3de56fbe3c12d0f6aca736720277ba672b3f87e522cf:

  • File bs/builtins/types/overloadset/helpers.h — part of check-in [982d26433b] at 2019-08-30 01:07:26 on branch trunk — The tuple assignment and compound assignment operators now first collect the results into temporary variables, and then perform the assignments. This allows things such as a,b = b,a to work. (user: achavasse size: 508)

#ifndef EMPATHY_BUILTINS_TYPES_OVERLOADSET_HELPERS_H
#define EMPATHY_BUILTINS_TYPES_OVERLOADSET_HELPERS_H

namespace empathy::builtins
{
    extern ptr< OverloadSet > CreateOverloadSet( Env& env, const StringId& name );
    extern ptr< OverloadSet > GetOverloadSet( Env& env, const StringId& name );
    extern ptr< OverloadSet > GetOrCreateOverloadSet( Env& env, const StringId& name );
    extern Value InvokeOverloadSet( const Context& c, const ptr< OverloadSet >& pOvlSet, const Value& args );
}

#endif