Arrow func
This commit is contained in:
@@ -17,7 +17,7 @@ public partial class QBEGenerator
|
||||
BoundStructInitializer structInitializer => EmitStructInitializer(structInitializer),
|
||||
BoundAddressOf addressOf => EmitAddressOf(addressOf),
|
||||
BoundDereference dereference => EmitDereference(dereference),
|
||||
BoundAnonymousFunc anonymousFunc => EmitAnonymousFunc(anonymousFunc),
|
||||
BoundArrowFunc arrowFunc => EmitArrowFunc(arrowFunc),
|
||||
BoundBinaryExpression binaryExpression => EmitBinaryExpression(binaryExpression),
|
||||
BoundFuncCall funcCallExpression => EmitFuncCall(funcCallExpression),
|
||||
BoundExternFuncIdent externFuncIdent => EmitExternFuncIdent(externFuncIdent),
|
||||
@@ -33,11 +33,11 @@ public partial class QBEGenerator
|
||||
};
|
||||
}
|
||||
|
||||
private Val EmitAnonymousFunc(BoundAnonymousFunc anonymousFunc)
|
||||
private Val EmitArrowFunc(BoundArrowFunc arrowFunc)
|
||||
{
|
||||
var name = $"$anon_func{++_anonymousFuncIndex}";
|
||||
_anonymousFunctions.Enqueue((anonymousFunc, name));
|
||||
return new Val(name, anonymousFunc.Type, ValKind.Direct);
|
||||
var name = $"$arrow_func{++_arrowFuncIndex}";
|
||||
_arrowFunctions.Enqueue((arrowFunc, name));
|
||||
return new Val(name, arrowFunc.Type, ValKind.Direct);
|
||||
}
|
||||
|
||||
private Val EmitArrayIndexAccess(BoundArrayIndexAccess arrayIndexAccess)
|
||||
|
||||
Reference in New Issue
Block a user