]> gitweb.ps.run Git - toc/blobdiff - src/repr_get.h
function resolution, pre generics
[toc] / src / repr_get.h
index 396c71a01c2c053ac2da5357097ef896b02d1640..827c02bd63e27882d8ff029f59b9d189cbdacd0b 100644 (file)
@@ -82,7 +82,15 @@ Function getFunction(TocParser::FuncContext * ctx, std::shared_ptr<Context> pare
     for (auto p : ctx->parameter()->var())\r
       result.parameters.push_back(getVariable(p));\r
   }\r
-  result.body = getBody(ctx->body(), parent);\r
+  if (ctx->body() != nullptr)\r
+  {\r
+    result.body = getBody(ctx->body(), parent);\r
+    result.defined = true;\r
+  }\r
+  else\r
+  {\r
+    result.defined = false;\r
+  }\r
   return result;\r
 }\r
 Struct getStruct(TocParser::StructDeclContext * ctx, std::shared_ptr<Context> parent)\r
@@ -219,10 +227,10 @@ Expr getExpr(TocParser::LitExprContext * ctx)
     result._lit.type = LitType::Decimal;\r
     result._lit._decimal = atof(ctx->literal()->DECIMAL_LIT()->toString().c_str());\r
   }\r
-  else if (ctx->literal()->STRING_LIT() != nullptr)\r
+  else if (ctx->literal()->StringLit() != nullptr)\r
   {\r
     result._lit.type = LitType::String;\r
-    result._lit._string = ctx->literal()->STRING_LIT()->toString();\r
+    result._lit._string = ctx->literal()->StringLit()->toString();\r
   }\r
   else if (ctx->literal()->BOOL_LIT() != nullptr)\r
   {\r