blob: 00bba92cf9ba0887e88c6a5730e83bfa45ede848 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
/*
file: parallel_parser1.dat
all directives
*/
fsm
(fsm-id "parallel_parser_phrase_th.lex"
,fsm-filename parallel_parser_phrase_th
,fsm-namespace NS_parallel_parser_phrase_th
,fsm-class Cparallel_parser_phrase_th{
user-prefix-declaration
using namespace NS_yacco2_terminals;
#include "c:/yacco2/compiler/grammars/ws_eol_k.h"
#include "c:/yacco2/compiler/grammars/identifier.h"
#include "c:/yacco2/compiler/grammars/yacco2_syntax_code.h"
#include "c:/yacco2/compiler/grammars/yacco2_code_end.h"
#include "c:/yacco2/compiler/grammars/parallel_parser_attributes.h"
***
user-declaration
public:
T_parallel_parser_phrase* parallel_parser_phrase_;
std::map<string,CAbs_lr1_sym*> attributes_map_;
void remove_attributes_from_map();
void add_attributes_to_map(CAbs_lr1_sym* Attributes);
***
constructor
parallel_parser_phrase_ = 0;
***
destructor
delete parallel_parser_phrase_; // stop_parse: clean up plastic dodos
***
user-implementation
void Cparallel_parser_phrase_th::remove_attributes_from_map(){
delete parallel_parser_phrase_;
parallel_parser_phrase_ = 0;
}
void
Cparallel_parser_phrase_th::
add_attributes_to_map(CAbs_lr1_sym* Attribute){
parallel_parser_phrase_->add_attribute_to_map(Attribute,abs_parser());
}
***
op
if(parallel_parser_phrase_ != 0){
delete parallel_parser_phrase_;
parallel_parser_phrase_ = 0;
}
parallel_parser_phrase_ = new T_parallel_parser_phrase;
parallel_parser_phrase_->rc(abs_parser()->start_token(),abs_parser());
***
}
,fsm-version "1.0",fsm-date "11 mar 2004",fsm-debug "true"
,fsm-comments "into the valley of ...")
parallel-parser
(
parallel-thread-function
TH_parallel_parser_phrase_th
***
parallel-la-boundary
eolr - ||| - |.|
***
code
#include <parallel_function_include_code.h>
***
)
|