static _TKN_TYPE_ scan_number(_NIL_TYPE_) { do scan_store_next_ch(); while (SCAN_CHECK(digit_mask)); if (SCAN_CHECK(period_mask)) return scan_fraction(); else if (SCAN_CHECK(exponent_mask)) return scan_exponent(); else { scan_terminate_text(); return _NBR_TOKEN_; }}
static _TKN_TYPE_ scan_exponent(_NIL_TYPE_) { scan_store_next_ch(); if (SCAN_CHECK(sign_mask)) scan_store_next_ch(); if (SCAN_CHECK(digit_mask)) do scan_store_next_ch(); while (SCAN_CHECK(digit_mask)); else _scan_error_(_DIG_ERROR_); scan_terminate_text(); return _FRC_TOKEN_; }
// Added CBR ==> :] for lazy tabs static _TKN_TYPE_ scan_Col(_NIL_TYPE_) { SCAN_NEXT_CH(); if (SCAN_CHECK(rbr_mask)) { SCAN_NEXT_CH(); return _CBR_TOKEN_; } else if (SCAN_CHECK(equal_mask)) { SCAN_NEXT_CH(); return _CEQ_TOKEN_; } else return _COL_TOKEN_; }
static _TKN_TYPE_ scan_Bkq(_NIL_TYPE_) { do SCAN_NEXT_CH(); while (SCAN_UNCHECK(eol_bkq_mask)); if (SCAN_CHECK(bkq_mask)) SCAN_NEXT_CH(); return _scan_(); }
static _TKN_TYPE_ scan_Wsp(_NIL_TYPE_) { do SCAN_NEXT_CH(); while (SCAN_CHECK(wsp_mask)); if (scan_ch) return _scan_(); else return _END_TOKEN_; }
// Added BRC ==> [: for lazy tabs static _TKN_TYPE_ scan_Lbr(_NIL_TYPE_) { SCAN_NEXT_CH(); if (SCAN_CHECK(col_mask)) { SCAN_NEXT_CH(); return _BRC_TOKEN_; } else return _LBR_TOKEN_; }
static _TKN_TYPE_ scan_Quo(_NIL_TYPE_) { SCAN_NEXT_CH(); while (SCAN_UNCHECK(eol_quo_mask)) scan_store_next_ch(); if (SCAN_CHECK(quo_mask)) SCAN_NEXT_CH(); else _scan_error_(_TXT_ERROR_); scan_terminate_text(); return _TXT_TOKEN_; }
static _NIL_TYPE_ scan_name(_NIL_TYPE_) { do scan_store_next_ch(); while (SCAN_CHECK(name_mask)); scan_terminate_text(); }
static _NIL_TYPE_ scan_operator(_NIL_TYPE_) { do scan_store_next_ch(); while (SCAN_CHECK(operator_mask)); scan_terminate_text(); }