HelenOS sources

lex               164 uspace/app/sbi/src/builtin.c 	lex_t lex;
lex               168 uspace/app/sbi/src/builtin.c 	lex_init(&lex, input);
lex               169 uspace/app/sbi/src/builtin.c 	parse_init(&parse, bi->program, &lex);
lex                68 uspace/app/sbi/src/imode.c 	lex_t lex;
lex               152 uspace/app/sbi/src/imode.c 		lex_init(&lex, input);
lex               153 uspace/app/sbi/src/imode.c 		parse_init(&parse, program, &lex);
lex                52 uspace/app/sbi/src/lex.c static void lex_touch(lex_t *lex);
lex                53 uspace/app/sbi/src/lex.c static bool_t lex_read_try(lex_t *lex);
lex                55 uspace/app/sbi/src/lex.c static void lex_skip_comment(lex_t *lex);
lex                56 uspace/app/sbi/src/lex.c static void lex_skip_ws(lex_t *lex);
lex                60 uspace/app/sbi/src/lex.c static void lex_word(lex_t *lex);
lex                61 uspace/app/sbi/src/lex.c static void lex_char(lex_t *lex);
lex                62 uspace/app/sbi/src/lex.c static void lex_number(lex_t *lex);
lex                63 uspace/app/sbi/src/lex.c static void lex_string(lex_t *lex);
lex                64 uspace/app/sbi/src/lex.c static void lex_char_string_core(lex_t *lex, chr_str_t cs);
lex               257 uspace/app/sbi/src/lex.c void lex_init(lex_t *lex, struct input *input)
lex               261 uspace/app/sbi/src/lex.c 	lex->input = input;
lex               263 uspace/app/sbi/src/lex.c 	rc = input_get_line(lex->input, &lex->inbuf);
lex               269 uspace/app/sbi/src/lex.c 	lex->ibp = lex->inbuf;
lex               270 uspace/app/sbi/src/lex.c 	lex->col_adj = 0;
lex               271 uspace/app/sbi/src/lex.c 	lex->prev_valid = b_false;
lex               272 uspace/app/sbi/src/lex.c 	lex->current_valid = b_true;
lex               281 uspace/app/sbi/src/lex.c void lex_next(lex_t *lex)
lex               284 uspace/app/sbi/src/lex.c 	lex_touch(lex);
lex               287 uspace/app/sbi/src/lex.c 	lex->current_valid = b_false;
lex               298 uspace/app/sbi/src/lex.c lem_t *lex_get_current(lex_t *lex)
lex               300 uspace/app/sbi/src/lex.c 	lex_touch(lex);
lex               301 uspace/app/sbi/src/lex.c 	return &lex->current;
lex               312 uspace/app/sbi/src/lex.c lem_t *lex_peek_prev(lex_t *lex)
lex               314 uspace/app/sbi/src/lex.c 	if (lex->current_valid == b_false) {
lex               319 uspace/app/sbi/src/lex.c 		return &lex->current;
lex               322 uspace/app/sbi/src/lex.c 	if (lex->prev_valid != b_true) {
lex               331 uspace/app/sbi/src/lex.c 	return &lex->prev;
lex               338 uspace/app/sbi/src/lex.c static void lex_touch(lex_t *lex)
lex               342 uspace/app/sbi/src/lex.c 	if (lex->current_valid == b_true)
lex               346 uspace/app/sbi/src/lex.c 	lex->prev = lex->current;
lex               347 uspace/app/sbi/src/lex.c 	lex->prev_valid = b_true;
lex               350 uspace/app/sbi/src/lex.c 		got_lem = lex_read_try(lex);
lex               353 uspace/app/sbi/src/lex.c 	lex->current_valid = b_true;
lex               367 uspace/app/sbi/src/lex.c static bool_t lex_read_try(lex_t *lex)
lex               372 uspace/app/sbi/src/lex.c 	lex_skip_ws(lex);
lex               380 uspace/app/sbi/src/lex.c 	line0 = input_get_line_no(lex->input);
lex               381 uspace/app/sbi/src/lex.c 	col0 = 1 + lex->col_adj + (lex->ibp - lex->inbuf);
lex               383 uspace/app/sbi/src/lex.c 	lex->current.cspan = cspan_new(lex->input, line0, col0, line0, col0);
lex               385 uspace/app/sbi/src/lex.c 	lsp = lex->ibp;
lex               386 uspace/app/sbi/src/lex.c 	bp = lex->ibp;
lex               390 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_eof;
lex               395 uspace/app/sbi/src/lex.c 		lex_word(lex);
lex               400 uspace/app/sbi/src/lex.c 		lex_char(lex);
lex               405 uspace/app/sbi/src/lex.c 		lex_number(lex);
lex               410 uspace/app/sbi/src/lex.c 		lex_string(lex);
lex               415 uspace/app/sbi/src/lex.c 		lex_skip_comment(lex);
lex               418 uspace/app/sbi/src/lex.c 		lex->current.cspan->col1 = col0 + (lex->ibp - lsp) - 1;
lex               426 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_comma;
lex               430 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_colon;
lex               434 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_scolon;
lex               439 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_period;
lex               443 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_slash;
lex               447 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_lparen;
lex               451 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_rparen;
lex               455 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_lsbr;
lex               459 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_rsbr;
lex               465 uspace/app/sbi/src/lex.c 			lex->current.lclass = lc_equal;
lex               469 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_assign;
lex               475 uspace/app/sbi/src/lex.c 			lex->current.lclass = lc_notequal;
lex               483 uspace/app/sbi/src/lex.c 			lex->current.lclass = lc_increase;
lex               487 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_plus;
lex               492 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_minus;
lex               497 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_mult;
lex               503 uspace/app/sbi/src/lex.c 			lex->current.lclass = lc_lt_equal;
lex               507 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_lt;
lex               513 uspace/app/sbi/src/lex.c 			lex->current.lclass = lc_gt_equal;
lex               517 uspace/app/sbi/src/lex.c 		lex->current.lclass = lc_gt;
lex               525 uspace/app/sbi/src/lex.c 	lex->ibp = bp;
lex               529 uspace/app/sbi/src/lex.c 	lex->current.cspan->col1 = col0 + (lex->ibp - lsp) - 1;
lex               533 uspace/app/sbi/src/lex.c 	lex->current.lclass = lc_invalid;
lex               535 uspace/app/sbi/src/lex.c 	lex->ibp = bp;
lex               547 uspace/app/sbi/src/lex.c static void lex_word(lex_t *lex)
lex               553 uspace/app/sbi/src/lex.c 	bp = lex->ibp;
lex               567 uspace/app/sbi/src/lex.c 	lex->ibp = bp + idx;
lex               575 uspace/app/sbi/src/lex.c 			lex->current.lclass = dp->lclass;
lex               582 uspace/app/sbi/src/lex.c 	lex->current.lclass = lc_ident;
lex               583 uspace/app/sbi/src/lex.c 	lex->current.u.ident.sid = strtab_get_sid(ident_buf);
lex               592 uspace/app/sbi/src/lex.c static void lex_char(lex_t *lex)
lex               597 uspace/app/sbi/src/lex.c 	lex_char_string_core(lex, cs_chr);
lex               607 uspace/app/sbi/src/lex.c 	lex->current.lclass = lc_lit_char;
lex               608 uspace/app/sbi/src/lex.c 	bigint_init(&lex->current.u.lit_char.value, char_val);
lex               617 uspace/app/sbi/src/lex.c static void lex_number(lex_t *lex)
lex               625 uspace/app/sbi/src/lex.c 	bp = lex->ibp;
lex               644 uspace/app/sbi/src/lex.c 	lex->ibp = bp;
lex               646 uspace/app/sbi/src/lex.c 	lex->current.lclass = lc_lit_int;
lex               647 uspace/app/sbi/src/lex.c 	bigint_shallow_copy(&value, &lex->current.u.lit_int.value);
lex               656 uspace/app/sbi/src/lex.c static void lex_string(lex_t *lex)
lex               658 uspace/app/sbi/src/lex.c 	lex_char_string_core(lex, cs_str);
lex               660 uspace/app/sbi/src/lex.c 	lex->current.lclass = lc_lit_string;
lex               661 uspace/app/sbi/src/lex.c 	lex->current.u.lit_string.value = os_str_dup(strlit_buf);
lex               664 uspace/app/sbi/src/lex.c static void lex_char_string_core(lex_t *lex, chr_str_t cs)
lex               690 uspace/app/sbi/src/lex.c 	bp = lex->ibp + 1;
lex               736 uspace/app/sbi/src/lex.c 	lex->ibp = bp + sidx + 1;
lex               747 uspace/app/sbi/src/lex.c static void lex_skip_comment(lex_t *lex)
lex               751 uspace/app/sbi/src/lex.c 	bp = lex->ibp + 2;
lex               757 uspace/app/sbi/src/lex.c 	lex->ibp = bp;
lex               766 uspace/app/sbi/src/lex.c static void lex_skip_ws(lex_t *lex)
lex               771 uspace/app/sbi/src/lex.c 	bp = lex->ibp;
lex               777 uspace/app/sbi/src/lex.c 				lex->col_adj += (TAB_WIDTH - 1);
lex               786 uspace/app/sbi/src/lex.c 		rc = input_get_line(lex->input, &lex->inbuf);
lex               792 uspace/app/sbi/src/lex.c 		bp = lex->inbuf;
lex               793 uspace/app/sbi/src/lex.c 		lex->col_adj = 0;
lex               796 uspace/app/sbi/src/lex.c 	lex->ibp = bp;
lex                38 uspace/app/sbi/src/lex.h void lex_init(lex_t *lex, struct input *input);
lex                39 uspace/app/sbi/src/lex.h void lex_next(lex_t *lex);
lex                40 uspace/app/sbi/src/lex.h lem_t *lex_get_current(lex_t *lex);
lex                41 uspace/app/sbi/src/lex.h lem_t *lex_peek_prev(lex_t *lex);
lex               106 uspace/app/sbi/src/parse.c void parse_init(parse_t *parse, stree_program_t *prog, struct lex *lex)
lex               110 uspace/app/sbi/src/parse.c 	parse->lex = lex;
lex               115 uspace/app/sbi/src/parse.c 	lex_next(parse->lex);
lex               159 uspace/app/sbi/src/parse.c 			lex_next(parse->lex);
lex               343 uspace/app/sbi/src/parse.c 		lex_next(parse->lex);
lex              1564 uspace/app/sbi/src/parse.c 	return lex_get_current(parse->lex);
lex              1622 uspace/app/sbi/src/parse.c 	lem = lex_peek_prev(parse->lex);
lex              1638 uspace/app/sbi/src/parse.c 	lex_next(parse->lex);
lex                34 uspace/app/sbi/src/parse.h void parse_init(parse_t *parse, struct stree_program *prog, struct lex *lex);
lex                35 uspace/app/sbi/src/parse_t.h 	struct lex *lex;
lex                60 uspace/app/sbi/src/program.c 	lex_t lex;
lex                71 uspace/app/sbi/src/program.c 	lex_init(&lex, input);
lex                72 uspace/app/sbi/src/program.c 	parse_init(&parse, program, &lex);
HelenOS homepage, sources at GitHub