23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
auto typeVal = ValueFromIRExpr( v.type() );
auto type = ::FromValue< TFuncType >( *typeVal );
if( !type )
return nullopt;
auto result = Decompose( v.val(),
Vec(
SubTerm(), // signature
SubTerm(), // identity
Val< pvec >() // toks
)
);
if( !result )
return nullopt;
auto&& [signature, identity, toks] = *result;
|
|
|
|
|
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
auto typeVal = ValueFromIRExpr( v.type() );
auto type = ::FromValue< TFuncType >( *typeVal );
if( !type )
return nullopt;
auto result = Decompose( v.val(),
Vec(
SubTerm(), // signature
SubTerm(), // identity
Val< ptr< void > >() // toks
)
);
if( !result )
return nullopt;
auto&& [signature, identity, toks] = *result;
|