1- #ifdef GEN_INTELLISENSE_DIRECTIVES
1+ #ifdef INTELLISENSE_DIRECTIVES
22#pragma once
33#include " types.hpp"
44#include " gen/ecode.hpp"
@@ -193,6 +193,7 @@ typedef AST_Stmt_If* CodeStmt_If;
193193typedef AST_Stmt_For* CodeStmt_For;
194194typedef AST_Stmt_Goto* CodeStmt_Goto;
195195typedef AST_Stmt_Label* CodeStmt_Label;
196+ typedef AST_Stmt_Lambda* CodeStmt_Lambda;
196197typedef AST_Stmt_Switch* CodeStmt_Switch;
197198typedef AST_Stmt_While* CodeStmt_While;
198199#else
@@ -208,6 +209,7 @@ struct CodeStmt_If;
208209struct CodeStmt_For ;
209210struct CodeStmt_Goto ;
210211struct CodeStmt_Label ;
212+ struct CodeStmt_Lambda ;
211213struct CodeStmt_Switch ;
212214struct CodeStmt_While ;
213215#endif
@@ -239,18 +241,18 @@ template< class Type> forceinline Type tmpl_cast( Code self ) { return * rcast(
239241
240242#pragma region Code C-Interface
241243
242- GEN_API void code_append (Code code, Code other );
244+ void code_append (Code code, Code other );
243245GEN_API Str code_debug_str (Code code);
244246GEN_API Code code_duplicate (Code code);
245- GEN_API Code* code_entry (Code code, u32 idx );
246- GEN_API bool code_has_entries (Code code);
247- GEN_API bool code_is_body (Code code);
247+ Code* code_entry (Code code, u32 idx );
248+ bool code_has_entries (Code code);
249+ bool code_is_body (Code code);
248250GEN_API bool code_is_equal (Code code, Code other);
249- GEN_API bool code_is_valid (Code code);
250- GEN_API void code_set_global (Code code);
251+ bool code_is_valid (Code code);
252+ void code_set_global (Code code);
251253GEN_API StrBuilder code_to_strbuilder (Code self );
252- GEN_API void code_to_strbuilder_ptr (Code self, StrBuilder* result );
253- GEN_API Str code_type_str (Code self );
254+ GEN_API void code_to_strbuilder_ref (Code self, StrBuilder* result );
255+ Str code_type_str (Code self );
254256GEN_API bool code_validate_body (Code self );
255257
256258#pragma endregion Code C-Interface
@@ -287,7 +289,7 @@ struct Code
287289 forceinline Code* entry (u32 idx) { return code_entry (* this , idx); }
288290 forceinline bool has_entries () { return code_has_entries (* this ); }
289291 forceinline StrBuilder to_strbuilder () { return code_to_strbuilder (* this ); }
290- forceinline void to_strbuilder (StrBuilder& result) { return code_to_strbuilder_ptr (* this , & result); }
292+ forceinline void to_strbuilder (StrBuilder& result) { return code_to_strbuilder_ref (* this , & result); }
291293 forceinline Str type_str () { return code_type_str (* this ); }
292294 forceinline bool validate_body () { return code_validate_body (*this ); }
293295#endif
@@ -399,7 +401,7 @@ struct AST
399401 Code Value; // Parameter, Variable
400402 };
401403 union {
402- Code NextVar; // Variable; Possible way to handle comma separated variables declarations. ( , NextVar->Specs NextVar->Name NextVar->ArrExpr = NextVar->Value )
404+ Code NextVar; // Variable
403405 Code SuffixSpecs; // Typename, Function (Thanks Unreal)
404406 Code PostNameMacro; // Only used with parameters for specifically UE_REQUIRES (Thanks Unreal)
405407 };
0 commit comments