Пример #1
0
        public static void Transpile(this Syntax.SetStatementSyntax setStatementNode, ref StringBuilder sb)
        {
            _ = setStatementNode ?? throw new ArgumentNullException(nameof(setStatementNode));

            setStatementNode.IdentifierNameNode.TranspileExpression(ref sb);
            if (setStatementNode.EmptyArrayIndexerNode is null)
            {
                setStatementNode.ArrayIndexerNode.Transpile(ref sb);
            }

            setStatementNode.EqualsValueClauseNode.Transpile(ref sb);
        }
Пример #2
0
        public static StatementSyntax Transpile(this Syntax.SetStatementSyntax setStatementNode)
        {
            _ = setStatementNode ?? throw new ArgumentNullException(nameof(setStatementNode));

            return(SyntaxFactory.ExpressionStatement(SyntaxFactory.AssignmentExpression(
                                                         Microsoft.CodeAnalysis.CSharp.SyntaxKind.SimpleAssignmentExpression,
                                                         setStatementNode.ArrayIndexerNode is null
                    ? setStatementNode.IdentifierNameNode.TranspileExpression()
                    : SyntaxFactory.ElementAccessExpression(
                                                             setStatementNode.IdentifierNameNode.TranspileExpression(),
                                                             setStatementNode.ArrayIndexerNode.Transpile()),
                                                         setStatementNode.EqualsValueClauseNode.ValueNode.Transpile())));
        }