public void flushStartOfLine(SSLexMark q_mark) { ++this.m_line; ++this.m_start; --q_mark.m_line; this.m_offset = 1; }
public SSLexLexeme(SSLexConsumer q_consumer, SSLexFinalState q_final, SSLexMark q_mark) { this.m_token = q_final.token(); this.m_line = q_consumer.line(); this.m_offset = q_consumer.offset(); this.m_lexeme = q_consumer.lexemeBuffer(q_mark: q_mark); this.m_length = q_consumer.lexemeLength(q_mark: q_mark); }
public virtual void flushLexeme(SSLexMark q_mark) { this.m_start = this.m_index = q_mark.m_index; this.m_line += q_mark.m_line; this.m_offset = q_mark.m_offset; this.m_scanLine = 0; this.m_scanOffset = q_mark.m_offset; this.m_bufferIndex = 0; }
public char[] lexemeBuffer(SSLexMark q_mark) { var length = lexemeLength(q_mark: q_mark); var chArray = new char[length]; for (var index = 0; index < length; ++index) { chArray[index] = this.m_buffer[index]; } return(chArray); }
public int lexemeLength(SSLexMark q_mark) { return(q_mark.index() - this.m_start); }
public void flushEndOfLine(SSLexMark q_mark) { --q_mark.m_line; --q_mark.m_index; }