mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-24 18:48:01 +02:00
New nullable support
This commit is contained in:
parent
59233cc996
commit
88adb3a1cd
16 changed files with 963 additions and 143 deletions
|
@ -40,6 +40,13 @@ public:
|
|||
CreateStmtFlags_To_CreateExprFlags_Mask = 1
|
||||
};
|
||||
|
||||
enum CreateTypeRefFlags
|
||||
{
|
||||
CreateTypeRefFlags_None,
|
||||
CreateTypeRefFlags_NoParseArrayBrackets = 1,
|
||||
CreateTypeRefFlags_SafeGenericParse = 2
|
||||
};
|
||||
|
||||
struct BfVisitorPos
|
||||
{
|
||||
BfBlock* mParent;
|
||||
|
@ -204,9 +211,9 @@ public:
|
|||
bool IsLocalMethod(BfAstNode* nameNode);
|
||||
int QualifiedBacktrack(BfAstNode* endNode, int checkIdx, bool* outHadChevrons = NULL); // Backtracks to dot token
|
||||
BfTypeReference* DoCreateNamedTypeRef(BfIdentifierNode* identifierNode);
|
||||
BfTypeReference* DoCreateTypeRef(BfAstNode* identifierNode, bool parseArrayBracket = true);
|
||||
BfTypeReference* CreateTypeRef(BfAstNode* identifierNode, bool parseArrayBracket = true);
|
||||
BfTypeReference* CreateTypeRefAfter(BfAstNode* astNode, bool parseArrayBracket = true);
|
||||
BfTypeReference* DoCreateTypeRef(BfAstNode* identifierNode, CreateTypeRefFlags createTypeRefFlags = CreateTypeRefFlags_None);
|
||||
BfTypeReference* CreateTypeRef(BfAstNode* identifierNode, CreateTypeRefFlags createTypeRefFlags = CreateTypeRefFlags_None);
|
||||
BfTypeReference* CreateTypeRefAfter(BfAstNode* astNode, CreateTypeRefFlags createTypeRefFlags = CreateTypeRefFlags_None);
|
||||
BfTypeReference* CreateRefTypeRef(BfTypeReference* elementType, BfTokenNode* refToken);
|
||||
BfTypeReference* CreateConstTypeRef(BfTypeReference* elementType, BfTokenNode* refToken);
|
||||
bool ParseMethod(BfMethodDeclaration* methodDeclaration, SizedArrayImpl<BfParameterDeclaration*>* params, SizedArrayImpl<BfTokenNode*>* commas, bool alwaysIncludeBlock = false);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue