diff --git a/IDE/src/Compiler/BfParser.bf b/IDE/src/Compiler/BfParser.bf index 58040e9b..cfd0cf53 100644 --- a/IDE/src/Compiler/BfParser.bf +++ b/IDE/src/Compiler/BfParser.bf @@ -181,6 +181,9 @@ namespace IDE.Compiler [CallingConvention(.Stdcall), CLink] static extern void BfParser_GetLineCharAtIdx(void* bfParser, int32 idx, int32* line, int32* lineChar); + [CallingConvention(.Stdcall), CLink] + static extern int32 BfParser_GetIndexAtLine(void* bfParser, int32 line); + public BfSystem mSystem; public void* mNativeBfParser; public bool mIsUsed; @@ -442,5 +445,10 @@ namespace IDE.Compiler return (line, char); } + + public int GetIndexAtLine(int line) + { + return BfParser_GetIndexAtLine(mNativeBfParser, (.) line); + } } } diff --git a/IDEHelper/Compiler/BfParser.cpp b/IDEHelper/Compiler/BfParser.cpp index 205b7f09..3b0ccad6 100644 --- a/IDEHelper/Compiler/BfParser.cpp +++ b/IDEHelper/Compiler/BfParser.cpp @@ -4200,4 +4200,9 @@ BF_EXPORT void BF_CALLTYPE BfParser_GetLineCharAtIdx(BfParser* bfParser, int idx *line = _line; *lineChar = _lineChar; +} + +BF_EXPORT int BF_CALLTYPE BfParser_GetIndexAtLine(BfParser* bfParser, int line) +{ + return bfParser->GetIndexAtLine(line); } \ No newline at end of file