MCPcopy Create free account
hub / github.com/CppCXY/EmmyLuaCodeStyle / IncLinenumber

Method IncLinenumber

LuaParser/src/Lexer/LuaLexer.cpp:594–613  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

592
593
594void LuaLexer::IncLinenumber() {
595 int old = _reader.GetCurrentChar();
596
597 _reader.NextChar();
598
599 if (CurrentIsNewLine() && _reader.GetCurrentChar() != old) {
600 _reader.NextChar(); /* skip '\n\r' or '\r\n' */
601 _file->SetEndOfLineState(EndOfLine::CRLF);
602 } else if (old == '\n') {
603 _file->SetEndOfLineState(EndOfLine::LF);
604 } else {
605 _file->SetEndOfLineState(EndOfLine::CR);
606 }
607
608 if (++_linenumber >= std::numeric_limits<int>::max()) {
609 return;
610 }
611
612 _file->PushLine(_reader.GetPos());
613}
614
615bool LuaLexer::CurrentIsNewLine() {
616 int ch = _reader.GetCurrentChar();

Callers

nothing calls this directly

Calls 5

GetCurrentCharMethod · 0.80
NextCharMethod · 0.80
SetEndOfLineStateMethod · 0.80
GetPosMethod · 0.80
PushLineMethod · 0.45

Tested by

no test coverage detected