Compartilhar via


TriggerTree Classe

Definição

Uma árvore de gatilho organiza os avaliadores de acordo com a generalização/especialização para facilitar o uso de regras.

public class TriggerTree
type TriggerTree = class
Public Class TriggerTree
Herança
TriggerTree

Comentários

Uma expressão de gatilho gerará true se a expressão avaliada em um quadro for verdadeira. A expressão em si consiste em funções boolianas arbitrárias ("predicados") combinadas com && || !. A maioria dos predicados é expressa sobre o quadro passado, mas eles podem ser qualquer coisa – há até mesmo maneiras de otimizar ou compará-los. Ao organizar os avaliadores em uma árvore (tecnicamente um DAG), fica mais fácil usar regras reduzindo o acoplamento entre regras. Por exemplo, se uma regra se aplicar se algum predicado A for true, outra regra que se aplicará se A && B for true for mais especializada. Se a segunda expressão for verdadeira, porque sabemos da relação, podemos ignorar a primeira regra , mesmo que sua expressão seja verdadeira. Sem esse tipo de funcionalidade para adicionar a segunda regra, você teria que alterar a primeira para se tornar um && !B.

Construtores

TriggerTree()

Inicializa uma nova instância da classe TriggerTree.

Propriedades

Comparers

Obtém um valor de um dicionário, que tem valores IPredicateComparer, com chaves de cadeia de caracteres.

Optimizers

Obtém uma lista de Otimizadores para otimizar cláusulas.

Root

Obtém ou define um valor do nó raiz.

TotalTriggers

Obtém ou define o número total de gatilhos.

Métodos

AddTrigger(Expression, Object, Quantifier[])

Adicione uma expressão de gatilho à árvore.

AddTrigger(String, Object, Quantifier[])

Adicione uma expressão de gatilho à árvore.

GenerateGraph(String)

Gera um grafo para determinado caminho.

Matches(Object)

Retornar as possíveis correspondências considerando o estado atual.

RemoveTrigger(Trigger)

Remova o gatilho da árvore.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

TreeToString(Int32)

Gere uma cadeia de caracteres que descreve a árvore.

VerifyTree()

Verifique se a árvore atende às invariáveis de especialização/generalização.

Aplica-se a