Goose  Diff

Differences From Artifact [688f500aa5]:

  • File bs/builtins/types/localvar/unify.cpp — part of check-in [6e598fe891] at 2019-08-29 20:12:40 on branch trunk — Params are now encoded distinctly from normal values, to allow for more generic unification rules for things suchs as BigInt versus Integer. (user: achavasse size: 2015)

To Artifact [8e0aa1d8aa]:

  • File bs/builtins/types/localvar/unify.cpp — part of check-in [af650a9e95] at 2019-09-22 14:37:55 on branch trunk — Project renaming. (user: achavasse size: 2007)

1
2
3
4
5



6
7

8
9
10
11
12
13
14
1
2



3
4
5
6

7
8
9
10
11
12
13
14


-
-
-
+
+
+

-
+







#include "builtins/builtins.h"

using namespace empathy;
using namespace empathy::ir;
using namespace empathy::llr;
using namespace goose;
using namespace goose::ir;
using namespace goose::llr;

namespace empathy::builtins
namespace goose::builtins
{
    void SetupLocalVarUnification( Env& e )
    {
        auto localVarPattern = GetValueType< LocalVar >( ANYTERM( _ ) );

        // LocalVar unification against a param:
        // Unify the contained value with the param.