Goose  Diff

Differences From Artifact [165cf9593c]:

  • File bs/sema/template.cpp — part of check-in [08ffdaf6db] at 2022-11-11 20:01:13 on branch trunk —
    • Implemented template tuples and vararg tuples
    • Fixed a few issues with the verifier
    (user: zlodo size: 2835)

To Artifact [8ff8a2cc21]:

  • File bs/sema/template.cpp — part of check-in [0db147f117] at 2024-09-15 20:24:31 on branch cir-ssa-refactor — Add clang format settings, reformat everything (user: achavasse size: 2868)

65
66
67
68
69
70
71

72
73
74
75
76
77
78
79
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return;

        pTemplateRuleSet->setup( c, tcc, tpl );
    }


    uint64_t TemplateHashTypePredicates( const Context& c, const TypeCheckingContext& tcc, const Term& tpl )
    {
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return 0;

        return pTemplateRuleSet->hashTypePredicates( c, tcc, tpl );
    }







>
|







65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return;

        pTemplateRuleSet->setup( c, tcc, tpl );
    }

    uint64_t TemplateHashTypePredicates(
        const Context& c, const TypeCheckingContext& tcc, const Term& tpl )
    {
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return 0;

        return pTemplateRuleSet->hashTypePredicates( c, tcc, tpl );
    }
91
92
93
94
95
96
97
98
    {
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return false;

        return pTemplateRuleSet->isPackExpr( c, tpl );
    }
}







|
92
93
94
95
96
97
98
99
    {
        const auto pTemplateRuleSet = GetTemplateRuleSet( c, tpl );
        if( !pTemplateRuleSet )
            return false;

        return pTemplateRuleSet->isPackExpr( c, tpl );
    }
} // namespace goose::sema