#include <VlppParser.h>
#include "WfExpression_Copy.h"
namespace
{
namespace
{
namespace
{
void
::
(
*
,
*
)
{
->
=
->
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfType>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
,
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
WfOrderedLambdaExpression
*
,
WfOrderedLambdaExpression
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfLetVariable>, listItem, from->variables)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
=
->
;
->
(
->
);
->
=
->
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfConstructorArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
WfTypeOfExpressionExpression
*
,
WfTypeOfExpressionExpression
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
=
->
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
FOREACH(vl::Ptr<WfExpression>, listItem, from->events)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfExpression>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
FOREACH(vl::Ptr<WfFunctionArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
=
->
;
->
->
;
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfExpression>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->declarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
WfOrderedLambdaExpression
*
)
{
auto
=
vl
::
<
WfOrderedLambdaExpression
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
WfTypeOfExpressionExpression
*
)
{
auto
=
vl
::
<
WfTypeOfExpressionExpression
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
,
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
->
;
}
void
::
(
*
,
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
WfRaiseExceptionStatement
*
,
WfRaiseExceptionStatement
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfStatement>, listItem, from->statements)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
=
->
;
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
WfRaiseExceptionStatement
*
)
{
auto
=
vl
::
<
WfRaiseExceptionStatement
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->declarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
=
->
;
->
->
;
}
void
::
(
*
,
*
)
{
->
=
->
;
FOREACH(vl::Ptr<WfFunctionArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfType>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
FOREACH(vl::Ptr<WfBaseConstructorCall>, listItem, from->baseConstructorCalls)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
FOREACH(vl::Ptr<WfFunctionArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfExpression>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
void
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
->
=
->
;
FOREACH(vl::Ptr<WfType>, listItem, from->baseTypes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->declarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
->
=
->
;
FOREACH(vl::Ptr<WfEnumItem>, listItem, from->items)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
=
->
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfEnumItemIntersection>, listItem, from->intersections)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
void
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
->
;
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfStructMember>, listItem, from->members)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
::
(
*
)
{
this
->
(
);
}
void
::
(
*
)
{
this
->
(
);
}
void
VirtualCfeDeclarationVisitor
::
(
WfAutoPropertyDeclaration
*
,
WfAutoPropertyDeclaration
*
)
{
->
(
->
);
->
=
->
;
->
=
->
;
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCfeDeclarationVisitor
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->expandedDeclarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCfeDeclarationVisitor
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
VirtualCfeDeclarationVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
VirtualCfeDeclarationVisitor
::
(
*
,
*
)
{
->
=
->
;
->
->
;
}
void
VirtualCfeDeclarationVisitor
::
(
WfCastResultInterfaceDeclaration
*
,
WfCastResultInterfaceDeclaration
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
vl
::
<
>
VirtualCfeDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
VirtualCfeDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
VirtualCfeDeclarationVisitor
::
(
WfAutoPropertyDeclaration
*
)
{
auto
=
vl
::
<
WfAutoPropertyDeclaration
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCfeDeclarationVisitor
::
(
WfCastResultInterfaceDeclaration
*
)
{
auto
=
vl
::
<
WfCastResultInterfaceDeclaration
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseDeclarationVisitor
::
(
WfStateMachineDeclaration
*
,
WfStateMachineDeclaration
*
)
{
FOREACH(vl::Ptr<WfStateInput>, listItem, from->inputs)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
FOREACH(vl::Ptr<WfStateDeclaration>, listItem, from->states)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->expandedDeclarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
->
=
->
;
->
->
;
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfFunctionArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfAttribute>, listItem, from->attributes)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
->
->
;
}
void
VirtualCseDeclarationVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfFunctionArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
->
->
;
}
vl
::
<
>
VirtualCseDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
VirtualCseDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
VirtualCseDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
VirtualCseDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
VirtualCseDeclarationVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
VirtualCseDeclarationVisitor
::
(
WfStateMachineDeclaration
*
)
{
auto
=
vl
::
<
WfStateMachineDeclaration
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
=
->
;
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
->
;
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
(
->
);
FOREACH(vl::Ptr<WfSwitchCase>, listItem, from->caseBranches)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
->
->
;
}
void
VirtualCseStatementVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
vl
::
<
>
VirtualCseStatementVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
VirtualCseStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
CoroutineStatementVisitor
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
CoroutineStatementVisitor
::
(
*
,
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
CoroutineStatementVisitor
::
(
*
,
*
)
{
->
->
;
}
void
CoroutineStatementVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfExpression>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
CoroutineStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
CoroutineStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
->
=
->
;
FOREACH(vl::Ptr<WfStateSwitchCase>, listItem, from->caseBranches)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
->
->
;
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfStateSwitchArgument>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
(
->
);
->
->
;
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
->
;
}
void
StateMachineStatementVisitor
::
(
*
,
*
)
{
->
=
->
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfExpression>, listItem, from->arguments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
vl
::
<
>
StateMachineStatementVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
StateMachineStatementVisitor
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
StateMachineStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
StateMachineStatementVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCfeExpressionVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCfeExpressionVisitor
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCfeExpressionVisitor
::
(
*
,
*
)
{
->
->
;
}
void
VirtualCfeExpressionVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
->
;
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
(
->
);
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
WfExpectedTypeCastExpression
*
,
WfExpectedTypeCastExpression
*
)
{
->
=
->
;
->
(
->
);
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
*
,
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
VirtualCseExpressionVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseExpressionVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseExpressionVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseExpressionVisitor
::
(
WfExpectedTypeCastExpression
*
)
{
auto
=
vl
::
<
WfExpectedTypeCastExpression
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
VirtualCseExpressionVisitor
::
(
*
)
{
auto
=
vl
::
<
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
ModuleUsingFragmentVisitor
::
(
WfModuleUsingNameFragment
*
,
WfModuleUsingNameFragment
*
)
{
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
ModuleUsingFragmentVisitor
::
(
*
,
*
)
{
->
->
;
}
void
ModuleUsingFragmentVisitor
::
(
WfModuleUsingWildCardFragment
*
,
WfModuleUsingWildCardFragment
*
)
{
(
static_cast
<
*>(
),
static_cast
<
*>(
));
}
void
ModuleUsingFragmentVisitor
::
(
WfModuleUsingNameFragment
*
)
{
auto
=
vl
::
<
WfModuleUsingNameFragment
>();
(
,
newNode
.
());
this
->
newNode
;
}
void
ModuleUsingFragmentVisitor
::
(
WfModuleUsingWildCardFragment
*
)
{
auto
=
vl
::
<
WfModuleUsingWildCardFragment
>();
(
,
newNode
.
());
this
->
newNode
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
void
::
(
*
,
*
)
{
->
=
->
;
->
.
->
.
;
->
.
=
->
.
;
->
.
->
.
;
FOREACH(vl::Ptr<WfModuleUsingPath>, listItem, from->paths)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
FOREACH(vl::Ptr<WfDeclaration>, listItem, from->declarations)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfModuleUsingItem>, listItem, from->items)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
void
::
(
*
,
*
)
{
FOREACH(vl::Ptr<WfModuleUsingFragment>, listItem, from->fragments)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
vl
::
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
vl
::
<
>
;
__foreach_iterator__
.
(
listItem
);)
{
->
.
(
(
listItem
));
}
->
->
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
auto
=
vl
::
<
>();
(
.
(),
to
.
());
return
to
;
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
(
static_cast
<
*>(
this
));
return
this
->
.
<
>();
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
(
static_cast
<
*>(
this
));
return
this
->
.
<
>();
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
(
static_cast
<
*>(
this
));
return
this
->
.
<
>();
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
(
static_cast
<
*>(
this
));
return
this
->
.
<
>();
}
vl
::
<
>
::
(
vl
::
<
>
)
{
if
(!
)
return
nullptr
;
(
static_cast
<
ModuleUsingFragmentVisitor
*>(
this
));
return
this
->
.
<
>();
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
VirtualCfeExpressionVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
VirtualCseExpressionVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
VirtualCseStatementVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
CoroutineStatementVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
StateMachineStatementVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
VirtualCfeDeclarationVisitor
*>(
this
));
return
this
->
;
}
vl
::
<
vl
::
parsing
::
>
::
(
*
)
{
->
(
static_cast
<
VirtualCseDeclarationVisitor
*>(
this
));
return
this
->
;
}
}
}
}