summaryrefslogtreecommitdiff
path: root/source/slang/slang-ast-synthesis.cpp
diff options
context:
space:
mode:
authorSai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com>2023-07-26 17:15:21 -0400
committerGitHub <noreply@github.com>2023-07-26 17:15:21 -0400
commitba89fc84267bfd09f1c8abf10a5b85d09bbc79de (patch)
tree2c79fc5dafb89a030d22fa86cd6fa3d69a89a785 /source/slang/slang-ast-synthesis.cpp
parentb8ade05df10a2774d3da5ef1fb2c7479ff48989a (diff)
Refactor `dmul(This, Differential)` to `dmul<T:Real>(T, Differential)` (#3029)
* Refactor `dmul(This, Differential)` to `dmul<T:Real>(T, Differential)` - Add AST synthesis support for generic containers - Refactor relevant tests * Merge dmul synthesis with dadd and dzero, and disambiguate using an enum * Fix trailing spaces
Diffstat (limited to 'source/slang/slang-ast-synthesis.cpp')
-rw-r--r--source/slang/slang-ast-synthesis.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/slang/slang-ast-synthesis.cpp b/source/slang/slang-ast-synthesis.cpp
index 872088d54..65955e815 100644
--- a/source/slang/slang-ast-synthesis.cpp
+++ b/source/slang/slang-ast-synthesis.cpp
@@ -122,6 +122,14 @@ Expr* ASTSynthesizer::emitInvokeExpr(Expr* callee, List<Expr*>&& args)
return rs;
}
+Expr* ASTSynthesizer::emitGenericAppExpr(Expr* genericExpr, List<Expr*>&& args)
+{
+ auto rs = m_builder->create<GenericAppExpr>();
+ rs->functionExpr = genericExpr;
+ rs->arguments = _Move(args);
+ return rs;
+}
+
Expr* ASTSynthesizer::emitMemberExpr(Type* type, Name* name)
{
auto rs = m_builder->create<StaticMemberExpr>();