6
6
7
7
public class CppTokensToPotentialLanguagePartsTranslator {
8
8
private enum State {
9
- GLOBAL , DEC , NAMESPACE , DEC_TO_IMP , IMP , FUNCTION_NAME , TYPEDEF
9
+ GLOBAL , DEC , NAMESPACE , DEC_TO_IMP , IMP , FUNCTION_NAME , TYPEDEF , GLOBAL_ASSIGNMENT
10
10
}
11
11
public CppTokensToPotentialLanguagePartsTranslator () {
12
12
}
@@ -66,6 +66,8 @@ protected CppPart input(Token token) {
66
66
return _GLOBAL (token );
67
67
case FUNCTION_NAME :
68
68
return _GLOBAL (token );
69
+ case GLOBAL_ASSIGNMENT :
70
+ return _GLOBAL_ASSIGNMENT (token );
69
71
case DEC :
70
72
return _DEC (token );
71
73
case NAMESPACE :
@@ -81,7 +83,11 @@ protected CppPart input(Token token) {
81
83
}
82
84
83
85
private CppPart _GLOBAL (Token token ){
84
- if (token .isTypeDef ()) {
86
+ if (token .isAssignment ()) {
87
+ set_state (State .GLOBAL_ASSIGNMENT );
88
+ return CppPart .Assignment ();
89
+ }
90
+ else if (token .isTypeDef ()) {
85
91
set_state (State .TYPEDEF );
86
92
return CppPart .Typedef ();
87
93
}
@@ -94,7 +100,7 @@ else if (token.equals("::"))
94
100
set_state (State .NAMESPACE );
95
101
else if (token .isSemicolon ()) {
96
102
set_state (State .GLOBAL );
97
- return CppPart .EndOfGlobalStatement (token );
103
+ return CppPart .EndOfGlobalStatement ();
98
104
}
99
105
else {
100
106
if (get_state () == State .FUNCTION_NAME )
@@ -104,6 +110,13 @@ else if (token.isSemicolon()) {
104
110
}
105
111
return null ;
106
112
}
113
+ private CppPart _GLOBAL_ASSIGNMENT (Token token ) {
114
+ if (token .isSemicolon ()) {
115
+ set_state (State .GLOBAL );
116
+ return CppPart .EndOfGlobalStatement ();
117
+ }
118
+ return null ;
119
+ }
107
120
private CppPart _TYPEDEF (Token token ) {
108
121
if (token .isSemicolon ())
109
122
set_state (State .GLOBAL );
0 commit comments