예제 #1
0
        public void Visit(ForkJoinInfo node)
        {
            AddDeclaration(
                node,
                InvocationExpression(
                    MemberAccessExpression(
                        SyntaxKind.SimpleMemberAccessExpression,
                        myBuilder,
                        IdentifierName("ForkJoin")))
                .WithArgumentList(
                    GetDescriptionArgumentList(node.Description)));

            var forkJoinVariable = myVariableManager.GetVariableOf(node);

            var identifier = IdentifierName(forkJoinVariable);

            foreach (var fork in node.Forks)
            {
                AddDeclaration(
                    fork,
                    InvocationExpression(
                        MemberAccessExpression(
                            SyntaxKind.SimpleMemberAccessExpression,
                            identifier,
                            GenericName(
                                Identifier("Fork"))
                            .WithTypeArgumentList(
                                TypeArgumentList(
                                    SingletonSeparatedList(
                                        fork.ActivityType.ToTypeSyntax())))))
                    .WithArgumentList(
                        GetDescriptionArgumentList(fork.Description)));
            }
        }
 public void Visit(ForkJoinInfo node)
 {
     foreach (var fork in node.Forks)
     {
         Visit(fork);
     }
 }
예제 #3
0
 public void Visit(ForkJoinInfo node)
 {
     ConnectNode(node);
 }