Partilhar via


SyntaxEditor Classe

Definição

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
public ref class SyntaxEditor
public class SyntaxEditor
type SyntaxEditor = class
Public Class SyntaxEditor
Herança
SyntaxEditor
Derivado

Comentários

A estratégia de edição acima torna um erro para um cliente do editor adicionar uma alteração que atualiza um nó pai e, em seguida, adiciona uma alteração que atualiza um nó filho (a menos que a alteração pai contenha o filho) e tentar isso gerará em runtime. Se um cliente precisar atualizar um filho e um pai, ele deverá adicionar a alteração filho primeiro e, em seguida, a alteração pai. E a alteração pai deve passar um retorno de chamada 'compute' apropriado para que ele veja os resultados da alteração filho.

Se um cliente quiser fazer uma substituição, localize o valorSyntaxNode colocado na árvore, o que pode ser feito adicionando uma anotação dedicada a esse nó e, em seguida, procurando-o novamente no nó "atual" passado para um retorno de chamada de "computação".

Construtores

SyntaxEditor(SyntaxNode, HostWorkspaceServices)

Cria uma nova instância SyntaxEditor.

SyntaxEditor(SyntaxNode, SolutionServices)

Cria uma nova instância SyntaxEditor.

SyntaxEditor(SyntaxNode, Workspace)
Obsoleto.

Cria uma nova instância SyntaxEditor.

Propriedades

Generator

Um SyntaxGenerator a ser usado para criar e alterar SyntaxNodeos .

OriginalRoot

O SyntaxNode que foi especificado quando o SyntaxEditor foi construído.

Métodos

GetChangedRoot()

Retorna o nó raiz alterado.

InsertAfter(SyntaxNode, IEnumerable<SyntaxNode>)

Insira os novos nós após o nó especificado já existente na árvore.

InsertAfter(SyntaxNode, SyntaxNode)

Insira o novo nó após o nó especificado já existente na árvore.

InsertBefore(SyntaxNode, IEnumerable<SyntaxNode>)

Insira os novos nós antes que o nó especificado já exista na árvore.

InsertBefore(SyntaxNode, SyntaxNode)

Insira o novo nó antes do nó especificado já existente na árvore.

RemoveNode(SyntaxNode, SyntaxRemoveOptions)

Remova o nó da árvore.

RemoveNode(SyntaxNode)

Remova o nó da árvore.

ReplaceNode(SyntaxNode, Func<SyntaxNode,SyntaxGenerator,SyntaxNode>)

Substitua o nó especificado por um nó produzido pela função .

ReplaceNode(SyntaxNode, SyntaxNode)

Substitua o nó especificado por um nó diferente.

TrackNode(SyntaxNode)

Verifica se o nó está controlado, mesmo que não seja alterado.

Métodos de Extensão

AddAttribute(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddAttributeArgument(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddBaseType(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddInterfaceType(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddMember(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddParameter(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
AddReturnAttribute(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
InsertMembers(SyntaxEditor, SyntaxNode, Int32, IEnumerable<SyntaxNode>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
InsertParameter(SyntaxEditor, SyntaxNode, Int32, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetAccessibility(SyntaxEditor, SyntaxNode, Accessibility)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetExpression(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetGetAccessorStatements(SyntaxEditor, SyntaxNode, IEnumerable<SyntaxNode>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetModifiers(SyntaxEditor, SyntaxNode, DeclarationModifiers)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetName(SyntaxEditor, SyntaxNode, String)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetSetAccessorStatements(SyntaxEditor, SyntaxNode, IEnumerable<SyntaxNode>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetStatements(SyntaxEditor, SyntaxNode, IEnumerable<SyntaxNode>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetType(SyntaxEditor, SyntaxNode, SyntaxNode)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetTypeConstraint(SyntaxEditor, SyntaxNode, String, SpecialTypeConstraintKind, IEnumerable<SyntaxNode>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.
SetTypeParameters(SyntaxEditor, SyntaxNode, IEnumerable<String>)

Um editor para fazer alterações em uma árvore de sintaxe. O editor funciona fornecendo uma lista de alterações a serem executadas em uma árvore específica na ordem. As alterações recebem um SyntaxNode a que serão aplicadas na árvore original para a qual o editor é criado. A semântica do aplicativo é a seguinte:

  1. A raiz original fornecida é usada como a raiz "atual" para todas as operações. Essa raiz "atual" será atualizada continuamente, tornando-se a nova raiz "atual". A raiz original nunca é alterada.
  2. Cada alteração tem seu determinado SyntaxNode controle, usando um SyntaxAnnotation, produzindo uma raiz "atual" que rastreia todas elas. Isso permite que esse mesmo nó seja encontrado após a aplicação de alterações anteriores que modificam a árvore.
  3. Cada alteração é então aplicada na ordem em que foi adicionada ao editor.
  4. Uma alteração primeiro tenta encontrar na SyntaxNode raiz "atual". Se esse nó não puder ser encontrado, a operação falhará com um ArgumentException.
  5. A alteração específica será executada nesse nó, removendo, substituindo ou inserindo ao redor dele de acordo com a alteração. Se a alteração for passada a um delegado como seu argumento de "computação", ela receberá o SyntaxNode encontrado na raiz atual. A raiz "atual" será atualizada substituindo o nó atual pelo novo nó computado.
  6. A raiz "atual" é retornada.

Aplica-se a