File Index Symbol Index

/*********************************************************************** This file is generated by: Vczh Parser Generator From parser definition:WfExpression.parser.txt Licensed under https://github.com/vczh-libraries/License ***********************************************************************/
#include <VlppParser.h>
#include "WfExpression_Traverse.h"
namespace
vl
{
namespace
workflow
{
namespace
traverse_visitor
{
/*********************************************************************** TypeVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
TypeVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
TypeVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfPredefinedType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfTopQualifiedType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfReferenceType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfRawPointerType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfSharedPointerType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfNullableType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfEnumerableType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfMapType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfObservableListType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfFunctionType
*
node
) { }
void
TypeVisitor
::
Traverse
(
WfChildType
*
node
) { }
// Visitor Members -----------------------------------
void
TypeVisitor
::
Visit
(
WfPredefinedType
*
node
) {
Traverse
(
static_cast
<
WfPredefinedType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
TypeVisitor
::
Visit
(
WfTopQualifiedType
*
node
) {
Traverse
(
static_cast
<
WfTopQualifiedType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
TypeVisitor
::
Visit
(
WfReferenceType
*
node
) {
Traverse
(
static_cast
<
WfReferenceType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
TypeVisitor
::
Visit
(
WfRawPointerType
*
node
) {
Traverse
(
static_cast
<
WfRawPointerType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfSharedPointerType
*
node
) {
Traverse
(
static_cast
<
WfSharedPointerType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfNullableType
*
node
) {
Traverse
(
static_cast
<
WfNullableType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfEnumerableType
*
node
) {
Traverse
(
static_cast
<
WfEnumerableType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfMapType
*
node
) {
Traverse
(
static_cast
<
WfMapType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
key
.
Obj
());
VisitField
(
node
->
value
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfObservableListType
*
node
) {
Traverse
(
static_cast
<
WfObservableListType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
()); }
void
TypeVisitor
::
Visit
(
WfFunctionType
*
node
) {
Traverse
(
static_cast
<
WfFunctionType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
result
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
TypeVisitor
::
Visit
(
WfChildType
*
node
) {
Traverse
(
static_cast
<
WfChildType
*>(
node
));
Traverse
(
static_cast
<
WfType
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
parent
.
Obj
());
Traverse
(
node
->
name
); }
/*********************************************************************** ExpressionVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
ExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
ExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfThisExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfTopQualifiedExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfReferenceExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfOrderedNameExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfOrderedLambdaExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfMemberExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfChildExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfLiteralExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfFloatingExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfIntegerExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfStringExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfUnaryExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfBinaryExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfLetExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfLetVariable
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfIfExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfRangeExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfSetTestingExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfConstructorExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfConstructorArgument
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfInferExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfTypeCastingExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfTypeTestingExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfTypeOfTypeExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfTypeOfExpressionExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfAttachEventExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfDetachEventExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfObserveExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfCallExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfFunctionExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfFunctionDeclaration
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfDeclaration
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfAttribute
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfClassMember
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfFunctionArgument
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfNewClassExpression
*
node
) { }
void
ExpressionVisitor
::
Traverse
(
WfNewInterfaceExpression
*
node
) { }
// VisitField ----------------------------------------
void
ExpressionVisitor
::
VisitField
(
WfLetVariable
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfLetVariable
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
ExpressionVisitor
::
VisitField
(
WfConstructorArgument
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfConstructorArgument
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
key
.
Obj
());
VisitField
(
node
->
value
.
Obj
()); }
void
ExpressionVisitor
::
VisitField
(
WfFunctionDeclaration
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfFunctionDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
returnType
.
Obj
());
VisitField
(
node
->
statement
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
ExpressionVisitor
::
VisitField
(
WfAttribute
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfAttribute
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
category
);
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
ExpressionVisitor
::
VisitField
(
WfClassMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfClassMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
ExpressionVisitor
::
VisitField
(
WfFunctionArgument
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfFunctionArgument
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
type
.
Obj
()); }
// Visitor Members -----------------------------------
void
ExpressionVisitor
::
Visit
(
WfThisExpression
*
node
) {
Traverse
(
static_cast
<
WfThisExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
ExpressionVisitor
::
Visit
(
WfTopQualifiedExpression
*
node
) {
Traverse
(
static_cast
<
WfTopQualifiedExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
ExpressionVisitor
::
Visit
(
WfReferenceExpression
*
node
) {
Traverse
(
static_cast
<
WfReferenceExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
ExpressionVisitor
::
Visit
(
WfOrderedNameExpression
*
node
) {
Traverse
(
static_cast
<
WfOrderedNameExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
ExpressionVisitor
::
Visit
(
WfOrderedLambdaExpression
*
node
) {
Traverse
(
static_cast
<
WfOrderedLambdaExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
body
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfMemberExpression
*
node
) {
Traverse
(
static_cast
<
WfMemberExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
parent
.
Obj
());
Traverse
(
node
->
name
); }
void
ExpressionVisitor
::
Visit
(
WfChildExpression
*
node
) {
Traverse
(
static_cast
<
WfChildExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
parent
.
Obj
());
Traverse
(
node
->
name
); }
void
ExpressionVisitor
::
Visit
(
WfLiteralExpression
*
node
) {
Traverse
(
static_cast
<
WfLiteralExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
ExpressionVisitor
::
Visit
(
WfFloatingExpression
*
node
) {
Traverse
(
static_cast
<
WfFloatingExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
value
); }
void
ExpressionVisitor
::
Visit
(
WfIntegerExpression
*
node
) {
Traverse
(
static_cast
<
WfIntegerExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
value
); }
void
ExpressionVisitor
::
Visit
(
WfStringExpression
*
node
) {
Traverse
(
static_cast
<
WfStringExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
value
); }
void
ExpressionVisitor
::
Visit
(
WfUnaryExpression
*
node
) {
Traverse
(
static_cast
<
WfUnaryExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
operand
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfBinaryExpression
*
node
) {
Traverse
(
static_cast
<
WfBinaryExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
first
.
Obj
());
VisitField
(
node
->
second
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfLetExpression
*
node
) {
Traverse
(
static_cast
<
WfLetExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
expression
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfIfExpression
*
node
) {
Traverse
(
static_cast
<
WfIfExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
condition
.
Obj
());
VisitField
(
node
->
trueBranch
.
Obj
());
VisitField
(
node
->
falseBranch
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfRangeExpression
*
node
) {
Traverse
(
static_cast
<
WfRangeExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
begin
.
Obj
());
VisitField
(
node
->
end
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfSetTestingExpression
*
node
) {
Traverse
(
static_cast
<
WfSetTestingExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
element
.
Obj
());
VisitField
(
node
->
collection
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfConstructorExpression
*
node
) {
Traverse
(
static_cast
<
WfConstructorExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } }
void
ExpressionVisitor
::
Visit
(
WfInferExpression
*
node
) {
Traverse
(
static_cast
<
WfInferExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
type
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfTypeCastingExpression
*
node
) {
Traverse
(
static_cast
<
WfTypeCastingExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
type
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfTypeTestingExpression
*
node
) {
Traverse
(
static_cast
<
WfTypeTestingExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
type
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfTypeOfTypeExpression
*
node
) {
Traverse
(
static_cast
<
WfTypeOfTypeExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfTypeOfExpressionExpression
*
node
) {
Traverse
(
static_cast
<
WfTypeOfExpressionExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfAttachEventExpression
*
node
) {
Traverse
(
static_cast
<
WfAttachEventExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
event
.
Obj
());
VisitField
(
node
->
function
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfDetachEventExpression
*
node
) {
Traverse
(
static_cast
<
WfDetachEventExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
event
.
Obj
());
VisitField
(
node
->
handler
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfObserveExpression
*
node
) {
Traverse
(
static_cast
<
WfObserveExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
parent
.
Obj
());
Traverse
(
node
->
name
);
VisitField
(
node
->
expression
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
ExpressionVisitor
::
Visit
(
WfCallExpression
*
node
) {
Traverse
(
static_cast
<
WfCallExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
function
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
ExpressionVisitor
::
Visit
(
WfFunctionExpression
*
node
) {
Traverse
(
static_cast
<
WfFunctionExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
function
.
Obj
()); }
void
ExpressionVisitor
::
Visit
(
WfNewClassExpression
*
node
) {
Traverse
(
static_cast
<
WfNewClassExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
ExpressionVisitor
::
Visit
(
WfNewInterfaceExpression
*
node
) {
Traverse
(
static_cast
<
WfNewInterfaceExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
ExpressionVisitor
::
Visit
(
WfVirtualCfeExpression
*
node
) {
Dispatch
(
node
); }
void
ExpressionVisitor
::
Visit
(
WfVirtualCseExpression
*
node
) {
Dispatch
(
node
); }
/*********************************************************************** StatementVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
StatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
StatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfBreakStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfContinueStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfReturnStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfDeleteStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfRaiseExceptionStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfIfStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfWhileStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfTryStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfBlockStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfGotoStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfVariableStatement
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfVariableDeclaration
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfDeclaration
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfAttribute
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfClassMember
*
node
) { }
void
StatementVisitor
::
Traverse
(
WfExpressionStatement
*
node
) { }
// VisitField ----------------------------------------
void
StatementVisitor
::
VisitField
(
WfVariableDeclaration
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfVariableDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
VisitField
(
node
->
expression
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
StatementVisitor
::
VisitField
(
WfAttribute
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfAttribute
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
category
);
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
StatementVisitor
::
VisitField
(
WfClassMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfClassMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
// Visitor Members -----------------------------------
void
StatementVisitor
::
Visit
(
WfBreakStatement
*
node
) {
Traverse
(
static_cast
<
WfBreakStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
StatementVisitor
::
Visit
(
WfContinueStatement
*
node
) {
Traverse
(
static_cast
<
WfContinueStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
StatementVisitor
::
Visit
(
WfReturnStatement
*
node
) {
Traverse
(
static_cast
<
WfReturnStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfDeleteStatement
*
node
) {
Traverse
(
static_cast
<
WfDeleteStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfRaiseExceptionStatement
*
node
) {
Traverse
(
static_cast
<
WfRaiseExceptionStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfIfStatement
*
node
) {
Traverse
(
static_cast
<
WfIfStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
Traverse
(
node
->
name
);
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
trueBranch
.
Obj
());
VisitField
(
node
->
falseBranch
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfWhileStatement
*
node
) {
Traverse
(
static_cast
<
WfWhileStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
condition
.
Obj
());
VisitField
(
node
->
statement
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfTryStatement
*
node
) {
Traverse
(
static_cast
<
WfTryStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
protectedStatement
.
Obj
());
Traverse
(
node
->
name
);
VisitField
(
node
->
catchStatement
.
Obj
());
VisitField
(
node
->
finallyStatement
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfBlockStatement
*
node
) {
Traverse
(
static_cast
<
WfBlockStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
endLabel
); }
void
StatementVisitor
::
Visit
(
WfGotoStatement
*
node
) {
Traverse
(
static_cast
<
WfGotoStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
label
); }
void
StatementVisitor
::
Visit
(
WfVariableStatement
*
node
) {
Traverse
(
static_cast
<
WfVariableStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
variable
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfExpressionStatement
*
node
) {
Traverse
(
static_cast
<
WfExpressionStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); }
void
StatementVisitor
::
Visit
(
WfVirtualCseStatement
*
node
) {
Dispatch
(
node
); }
void
StatementVisitor
::
Visit
(
WfCoroutineStatement
*
node
) {
Dispatch
(
node
); }
void
StatementVisitor
::
Visit
(
WfStateMachineStatement
*
node
) {
Dispatch
(
node
); }
/*********************************************************************** DeclarationVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
DeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
DeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfNamespaceDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfAttribute
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfClassMember
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfFunctionDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfFunctionArgument
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfVariableDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfEventDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfPropertyDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfConstructorDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfBaseConstructorCall
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfDestructorDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfClassDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfEnumDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfEnumItem
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfEnumItemIntersection
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfStructDeclaration
*
node
) { }
void
DeclarationVisitor
::
Traverse
(
WfStructMember
*
node
) { }
// VisitField ----------------------------------------
void
DeclarationVisitor
::
VisitField
(
WfAttribute
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfAttribute
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
category
);
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
DeclarationVisitor
::
VisitField
(
WfClassMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfClassMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
DeclarationVisitor
::
VisitField
(
WfFunctionArgument
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfFunctionArgument
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
type
.
Obj
()); }
void
DeclarationVisitor
::
VisitField
(
WfBaseConstructorCall
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfBaseConstructorCall
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } }
void
DeclarationVisitor
::
VisitField
(
WfEnumItem
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfEnumItem
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
Traverse
(
node
->
number
); {
VisitField
(
listItem
.
Obj
()); } }
void
DeclarationVisitor
::
VisitField
(
WfEnumItemIntersection
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfEnumItemIntersection
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
DeclarationVisitor
::
VisitField
(
WfStructMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfStructMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
type
.
Obj
()); }
// Visitor Members -----------------------------------
void
DeclarationVisitor
::
Visit
(
WfNamespaceDeclaration
*
node
) {
Traverse
(
static_cast
<
WfNamespaceDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfFunctionDeclaration
*
node
) {
Traverse
(
static_cast
<
WfFunctionDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
returnType
.
Obj
());
VisitField
(
node
->
statement
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfVariableDeclaration
*
node
) {
Traverse
(
static_cast
<
WfVariableDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
VisitField
(
node
->
expression
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfEventDeclaration
*
node
) {
Traverse
(
static_cast
<
WfEventDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfPropertyDeclaration
*
node
) {
Traverse
(
static_cast
<
WfPropertyDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
Traverse
(
node
->
getter
);
Traverse
(
node
->
setter
);
Traverse
(
node
->
valueChangedEvent
); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfConstructorDeclaration
*
node
) {
Traverse
(
static_cast
<
WfConstructorDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
statement
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfDestructorDeclaration
*
node
) {
Traverse
(
static_cast
<
WfDestructorDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
statement
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfClassDeclaration
*
node
) {
Traverse
(
static_cast
<
WfClassDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfEnumDeclaration
*
node
) {
Traverse
(
static_cast
<
WfEnumDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfStructDeclaration
*
node
) {
Traverse
(
static_cast
<
WfStructDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
DeclarationVisitor
::
Visit
(
WfVirtualCfeDeclaration
*
node
) {
Dispatch
(
node
); }
void
DeclarationVisitor
::
Visit
(
WfVirtualCseDeclaration
*
node
) {
Dispatch
(
node
); }
/*********************************************************************** VirtualCfeDeclarationVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
VirtualCfeDeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfAutoPropertyDeclaration
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfVirtualCfeDeclaration
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfDeclaration
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfAttribute
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfClassMember
*
node
) { }
void
VirtualCfeDeclarationVisitor
::
Traverse
(
WfCastResultInterfaceDeclaration
*
node
) { }
// VisitField ----------------------------------------
void
VirtualCfeDeclarationVisitor
::
VisitField
(
WfAttribute
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfAttribute
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
category
);
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
VirtualCfeDeclarationVisitor
::
VisitField
(
WfClassMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfClassMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
// Visitor Members -----------------------------------
void
VirtualCfeDeclarationVisitor
::
Visit
(
WfAutoPropertyDeclaration
*
node
) {
Traverse
(
static_cast
<
WfAutoPropertyDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCfeDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
VisitField
(
node
->
expression
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
void
VirtualCfeDeclarationVisitor
::
Visit
(
WfCastResultInterfaceDeclaration
*
node
) {
Traverse
(
static_cast
<
WfCastResultInterfaceDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCfeDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
baseType
.
Obj
());
VisitField
(
node
->
elementType
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
/*********************************************************************** VirtualCseDeclarationVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
VirtualCseDeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfStateMachineDeclaration
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfVirtualCseDeclaration
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfDeclaration
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfAttribute
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfClassMember
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfStateInput
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfFunctionArgument
*
node
) { }
void
VirtualCseDeclarationVisitor
::
Traverse
(
WfStateDeclaration
*
node
) { }
// VisitField ----------------------------------------
void
VirtualCseDeclarationVisitor
::
VisitField
(
WfAttribute
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfAttribute
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
category
);
Traverse
(
node
->
name
);
VisitField
(
node
->
value
.
Obj
()); }
void
VirtualCseDeclarationVisitor
::
VisitField
(
WfClassMember
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfClassMember
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
void
VirtualCseDeclarationVisitor
::
VisitField
(
WfStateInput
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfStateInput
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); {
VisitField
(
listItem
.
Obj
()); } }
void
VirtualCseDeclarationVisitor
::
VisitField
(
WfFunctionArgument
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfFunctionArgument
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
type
.
Obj
()); }
void
VirtualCseDeclarationVisitor
::
VisitField
(
WfStateDeclaration
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfStateDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
statement
.
Obj
()); }
// Visitor Members -----------------------------------
void
VirtualCseDeclarationVisitor
::
Visit
(
WfStateMachineDeclaration
*
node
) {
Traverse
(
static_cast
<
WfStateMachineDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseDeclaration
*>(
node
));
Traverse
(
static_cast
<
WfDeclaration
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); }
Traverse
(
node
->
name
);
VisitField
(
node
->
classMember
.
Obj
()); }
/*********************************************************************** VirtualCseStatementVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
VirtualCseStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfForEachStatement
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfVirtualCseStatement
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfStatement
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfSwitchStatement
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfSwitchCase
*
node
) { }
void
VirtualCseStatementVisitor
::
Traverse
(
WfCoProviderStatement
*
node
) { }
// VisitField ----------------------------------------
void
VirtualCseStatementVisitor
::
VisitField
(
WfSwitchCase
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfSwitchCase
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
statement
.
Obj
()); }
// Visitor Members -----------------------------------
void
VirtualCseStatementVisitor
::
Visit
(
WfForEachStatement
*
node
) {
Traverse
(
static_cast
<
WfForEachStatement
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
);
VisitField
(
node
->
collection
.
Obj
());
VisitField
(
node
->
statement
.
Obj
());
VisitField
(
node
->
expandedStatement
.
Obj
()); }
void
VirtualCseStatementVisitor
::
Visit
(
WfSwitchStatement
*
node
) {
Traverse
(
static_cast
<
WfSwitchStatement
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
()); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
defaultBranch
.
Obj
());
VisitField
(
node
->
expandedStatement
.
Obj
()); }
void
VirtualCseStatementVisitor
::
Visit
(
WfCoProviderStatement
*
node
) {
Traverse
(
static_cast
<
WfCoProviderStatement
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
);
VisitField
(
node
->
statement
.
Obj
());
VisitField
(
node
->
expandedStatement
.
Obj
()); }
/*********************************************************************** CoroutineStatementVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
CoroutineStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
CoroutineStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
CoroutineStatementVisitor
::
Traverse
(
WfCoPauseStatement
*
node
) { }
void
CoroutineStatementVisitor
::
Traverse
(
WfCoroutineStatement
*
node
) { }
void
CoroutineStatementVisitor
::
Traverse
(
WfStatement
*
node
) { }
void
CoroutineStatementVisitor
::
Traverse
(
WfCoOperatorStatement
*
node
) { }
// Visitor Members -----------------------------------
void
CoroutineStatementVisitor
::
Visit
(
WfCoPauseStatement
*
node
) {
Traverse
(
static_cast
<
WfCoPauseStatement
*>(
node
));
Traverse
(
static_cast
<
WfCoroutineStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
statement
.
Obj
()); }
void
CoroutineStatementVisitor
::
Visit
(
WfCoOperatorStatement
*
node
) {
Traverse
(
static_cast
<
WfCoOperatorStatement
*>(
node
));
Traverse
(
static_cast
<
WfCoroutineStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
varName
);
Traverse
(
node
->
opName
); {
VisitField
(
listItem
.
Obj
()); } }
/*********************************************************************** StateMachineStatementVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
StateMachineStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
StateMachineStatementVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStateSwitchStatement
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStateMachineStatement
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStatement
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStateSwitchCase
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStateSwitchArgument
*
node
) { }
void
StateMachineStatementVisitor
::
Traverse
(
WfStateInvokeStatement
*
node
) { }
// VisitField ----------------------------------------
void
StateMachineStatementVisitor
::
VisitField
(
WfStateSwitchCase
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfStateSwitchCase
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); {
VisitField
(
listItem
.
Obj
()); }
VisitField
(
node
->
statement
.
Obj
()); }
void
StateMachineStatementVisitor
::
VisitField
(
WfStateSwitchArgument
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfStateSwitchArgument
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
// Visitor Members -----------------------------------
void
StateMachineStatementVisitor
::
Visit
(
WfStateSwitchStatement
*
node
) {
Traverse
(
static_cast
<
WfStateSwitchStatement
*>(
node
));
Traverse
(
static_cast
<
WfStateMachineStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } }
void
StateMachineStatementVisitor
::
Visit
(
WfStateInvokeStatement
*
node
) {
Traverse
(
static_cast
<
WfStateInvokeStatement
*>(
node
));
Traverse
(
static_cast
<
WfStateMachineStatement
*>(
node
));
Traverse
(
static_cast
<
WfStatement
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); {
VisitField
(
listItem
.
Obj
()); } }
/*********************************************************************** VirtualCfeExpressionVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
VirtualCfeExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
VirtualCfeExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
VirtualCfeExpressionVisitor
::
Traverse
(
WfFormatExpression
*
node
) { }
void
VirtualCfeExpressionVisitor
::
Traverse
(
WfVirtualCfeExpression
*
node
) { }
void
VirtualCfeExpressionVisitor
::
Traverse
(
WfExpression
*
node
) { }
// Visitor Members -----------------------------------
void
VirtualCfeExpressionVisitor
::
Visit
(
WfFormatExpression
*
node
) {
Traverse
(
static_cast
<
WfFormatExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCfeExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
value
);
VisitField
(
node
->
expandedExpression
.
Obj
()); }
/*********************************************************************** VirtualCseExpressionVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
VirtualCseExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfBindExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfVirtualCseExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfNewCoroutineExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfMixinCastExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfExpectedTypeCastExpression
*
node
) { }
void
VirtualCseExpressionVisitor
::
Traverse
(
WfCoOperatorExpression
*
node
) { }
// Visitor Members -----------------------------------
void
VirtualCseExpressionVisitor
::
Visit
(
WfBindExpression
*
node
) {
Traverse
(
static_cast
<
WfBindExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
expandedExpression
.
Obj
()); }
void
VirtualCseExpressionVisitor
::
Visit
(
WfNewCoroutineExpression
*
node
) {
Traverse
(
static_cast
<
WfNewCoroutineExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
);
VisitField
(
node
->
statement
.
Obj
());
VisitField
(
node
->
expandedExpression
.
Obj
()); }
void
VirtualCseExpressionVisitor
::
Visit
(
WfMixinCastExpression
*
node
) {
Traverse
(
static_cast
<
WfMixinCastExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
type
.
Obj
());
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
expandedExpression
.
Obj
()); }
void
VirtualCseExpressionVisitor
::
Visit
(
WfExpectedTypeCastExpression
*
node
) {
Traverse
(
static_cast
<
WfExpectedTypeCastExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
VisitField
(
node
->
expression
.
Obj
());
VisitField
(
node
->
expandedExpression
.
Obj
()); }
void
VirtualCseExpressionVisitor
::
Visit
(
WfCoOperatorExpression
*
node
) {
Traverse
(
static_cast
<
WfCoOperatorExpression
*>(
node
));
Traverse
(
static_cast
<
WfVirtualCseExpression
*>(
node
));
Traverse
(
static_cast
<
WfExpression
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
);
VisitField
(
node
->
expandedExpression
.
Obj
()); }
/*********************************************************************** ModuleUsingFragmentVisitor ***********************************************************************/
// Traverse ------------------------------------------
void
ModuleUsingFragmentVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
ModuleUsingFragmentVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
ModuleUsingFragmentVisitor
::
Traverse
(
WfModuleUsingNameFragment
*
node
) { }
void
ModuleUsingFragmentVisitor
::
Traverse
(
WfModuleUsingFragment
*
node
) { }
void
ModuleUsingFragmentVisitor
::
Traverse
(
WfModuleUsingWildCardFragment
*
node
) { }
// Visitor Members -----------------------------------
void
ModuleUsingFragmentVisitor
::
Visit
(
WfModuleUsingNameFragment
*
node
) {
Traverse
(
static_cast
<
WfModuleUsingNameFragment
*>(
node
));
Traverse
(
static_cast
<
WfModuleUsingFragment
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); }
void
ModuleUsingFragmentVisitor
::
Visit
(
WfModuleUsingWildCardFragment
*
node
) {
Traverse
(
static_cast
<
WfModuleUsingWildCardFragment
*>(
node
));
Traverse
(
static_cast
<
WfModuleUsingFragment
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); }
/*********************************************************************** ModuleVisitor ***********************************************************************/
void
ModuleVisitor
::
VisitField
(
WfModule
*
node
) {
Traverse
(
static_cast
<
WfModule
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
));
Traverse
(
node
->
name
); {
VisitField
(
listItem
.
Obj
()); } {
VisitField
(
listItem
.
Obj
()); } }
// Traverse ------------------------------------------
void
ModuleVisitor
::
Traverse
(
vl
::
parsing
::
ParsingToken
&
token
) { }
void
ModuleVisitor
::
Traverse
(
vl
::
parsing
::
ParsingTreeCustomBase
*
node
) { }
void
ModuleVisitor
::
Traverse
(
WfModule
*
node
) { }
void
ModuleVisitor
::
Traverse
(
WfModuleUsingPath
*
node
) { }
void
ModuleVisitor
::
Traverse
(
WfModuleUsingItem
*
node
) { }
// VisitField ----------------------------------------
void
ModuleVisitor
::
VisitField
(
WfModuleUsingPath
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfModuleUsingPath
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } }
void
ModuleVisitor
::
VisitField
(
WfModuleUsingItem
*
node
) {
if
(!
node
)
return
;
Traverse
(
static_cast
<
WfModuleUsingItem
*>(
node
));
Traverse
(
static_cast
<
vl
::
parsing
::
ParsingTreeCustomBase
*>(
node
)); {
VisitField
(
listItem
.
Obj
()); } }
// VisitField (virtual) ------------------------------
void
ModuleVisitor
::
VisitField
(
WfType
*
node
) {
if
(!
node
)
return
;
node
->
Accept
(
static_cast
<
TypeVisitor
*>(
this
)); }
void
ModuleVisitor
::
VisitField
(
WfExpression
*
node
) {
if
(!
node
)
return
;
node
->
Accept
(
static_cast
<
ExpressionVisitor
*>(
this
)); }
void
ModuleVisitor
::
VisitField
(
WfStatement
*
node
) {
if
(!
node
)
return
;
node
->
Accept
(
static_cast
<
StatementVisitor
*>(
this
)); }
void
ModuleVisitor
::
VisitField
(
WfDeclaration
*
node
) {
if
(!
node
)
return
;
node
->
Accept
(
static_cast
<
DeclarationVisitor
*>(
this
)); }
void
ModuleVisitor
::
VisitField
(
WfModuleUsingFragment
*
node
) {
if
(!
node
)
return
;
node
->
Accept
(
static_cast
<
ModuleUsingFragmentVisitor
*>(
this
)); }
// Dispatch (virtual) --------------------------------
void
ModuleVisitor
::
Dispatch
(
WfVirtualCfeExpression
*
node
) {
node
->
Accept
(
static_cast
<
VirtualCfeExpressionVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfVirtualCseExpression
*
node
) {
node
->
Accept
(
static_cast
<
VirtualCseExpressionVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfVirtualCseStatement
*
node
) {
node
->
Accept
(
static_cast
<
VirtualCseStatementVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfCoroutineStatement
*
node
) {
node
->
Accept
(
static_cast
<
CoroutineStatementVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfStateMachineStatement
*
node
) {
node
->
Accept
(
static_cast
<
StateMachineStatementVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfVirtualCfeDeclaration
*
node
) {
node
->
Accept
(
static_cast
<
VirtualCfeDeclarationVisitor
*>(
this
)); }
void
ModuleVisitor
::
Dispatch
(
WfVirtualCseDeclaration
*
node
) {
node
->
Accept
(
static_cast
<
VirtualCseDeclarationVisitor
*>(
this
)); } } } }