/* FILE: rule_test2.dat */ fsm (fsm-id "eol.lex",fsm-filename eol,fsm-namespace NS_eol ,fsm-class Ceol ,fsm-version "1.0" ,fsm-date "17 Juin 2003",fsm-debug "false" ,fsm-comments "end-of-line recognizer") parallel-parser ( parallel-thread-function TH_eol *** parallel-la-boundary eolr // - "x0a" more efficient to use |.| *** code #include *** ) @"c:/yacco2/compiler/grammars/yacco2_include_files.lex" // rules{ Reol AD AB(){ -> xfa Rdelimiters { rhs-op ++yacco2::POS_IN_LINE_NO__; CAbs_lr1_sym* sym = new T_eol; sym->rc(abs_parser()->start_token(),abs_parser()); sym->set_line_no_and_pos_in_line(yacco2::LINE_NO__,yacco2::POS_IN_LINE_NO__); RSVP(sym) ++yacco2::LINE_NO__;// next line no yacco2::POS_IN_LINE_NO__ = 0;// reset for next line *** } } Rdelimiters AD AB(){ -> no-end-of-code -> "x0a" -> "x0d" |.| -> "x0d" "x0a" } }// end of rules