private static bool TryGetInvocationInputType(SemanticModel semanticModel, ActivityFunctionCall activityInvocation, out ITypeSymbol invocationInputType)
        {
            var invocationInput = activityInvocation.ParameterNode;

            invocationInputType = SyntaxNodeUtils.GetSyntaxTreeSemanticModel(semanticModel, invocationInput).GetTypeInfo(invocationInput).Type;

            return(invocationInputType != null);
        }
Exemplo n.º 2
0
        private static bool IsValidReturnTypeForDefinition(ActivityFunctionCall invocation, ActivityFunctionDefinition definition)
        {
            var definitionReturnType = definition.ReturnType;

            if (TryGetTaskTypeArgument(definitionReturnType, out ITypeSymbol taskTypeArgument))
            {
                definitionReturnType = taskTypeArgument;
            }

            return(SyntaxNodeUtils.IsMatchingDerivedOrCompatibleType(definitionReturnType, invocation.ReturnType));
        }
Exemplo n.º 3
0
        private static bool TryGetInvocationInputType(SemanticModel semanticModel, ActivityFunctionCall activityInvocation, out ITypeSymbol invocationInputType)
        {
            var activityInput = activityInvocation.ArgumentNode;

            if (activityInput == null)
            {
                invocationInputType = null;
                return(false);
            }

            return(SyntaxNodeUtils.TryGetITypeSymbol(semanticModel, activityInput, out invocationInputType));
        }
Exemplo n.º 4
0
        private static bool TryGetInvocationReturnType(SemanticModel semanticModel, ActivityFunctionCall activityInvocation, out ITypeSymbol invocationReturnType)
        {
            var invocationReturnNode = activityInvocation.ReturnTypeNode;

            return(SyntaxNodeUtils.TryGetITypeSymbol(semanticModel, invocationReturnNode, out invocationReturnType));
        }
Exemplo n.º 5
0
        private static void TryGetInvocationReturnType(SemanticModel semanticModel, ActivityFunctionCall activityInvocation, out ITypeSymbol invocationReturnType)
        {
            var invocationReturnNode = activityInvocation.ReturnTypeNode;

            invocationReturnType = SyntaxNodeUtils.GetSyntaxTreeSemanticModel(semanticModel, invocationReturnNode).GetTypeInfo(invocationReturnNode).Type;
        }
 private static bool IsValidArgumentForDefinition(ActivityFunctionCall invocation, ActivityFunctionDefinition definition)
 {
     return(SyntaxNodeUtils.IsMatchingDerivedOrCompatibleType(invocation.InputType, definition.InputType));
 }
 private static bool InvocationInputIsNull(ActivityFunctionCall invocation)
 {
     return(invocation.InputNode != null && invocation.InputNode.IsKind(SyntaxKind.NullLiteralExpression));
 }