Sprache

TriggerTree Klasse

Definition

Ein Triggerbaum organisiert Evaluatoren nach Verallgemeinerung/Spezialisierung, um die Anwendung von Regeln zu erleichtern.

public class TriggerTree
type TriggerTree = class
Public Class TriggerTree
Vererbung
TriggerTree

Hinweise

Ein Trigger-Ausdruck erzeugt true, wenn der auf einem Rahmen ausgewertete Ausdruck true ist. Der Ausdruck selbst besteht aus beliebigen boolischen Funktionen ("Prädikaten"), kombiniert mit & & || !. Die meisten Prädikate werden über das eingespielte Frame ausgedrückt, aber sie können alles sein – es gibt sogar Möglichkeiten, sie zu optimieren oder zu vergleichen. Durch die Organisation von Evaluatoren in einem Baum (technisch gesehen ein DAG) wird es einfacher, Regeln zu verwenden, indem die Kopplung zwischen Regeln reduziert wird. Wenn zum Beispiel eine Regel gilt, wenn ein Prädikat A wahr ist, dann ist eine andere Regel, die gilt, wenn A & B wahr sind, spezialisierter. Wenn der zweite Ausdruck wahr ist, können wir, weil wir die Beziehung kennen, die erste Regel ignorieren – auch wenn ihr Ausdruck wahr ist. Ohne diese Möglichkeit, um die zweite Regel hinzuzufügen, müsste man die erste zu A & !B ändern.

Konstruktoren

Name Beschreibung
TriggerTree()

Initialisiert eine neue Instanz der TriggerTree-Klasse.

Eigenschaften

Name Beschreibung
Comparers

Erhält einen Wert eines Wörterbuchs, das IPredicateComparer-Werte mit String-Schlüsseln enthält.

Optimizers

Erhält eine Liste von Optimierern zur Optimierung von Klauseln.

Root

Erhält oder setzt einen Wert des Wurzelknotens.

TotalTriggers

Erhält oder setzt die Gesamtzahl der Trigger.

Methoden

Name Beschreibung
AddTrigger(Expression, Object, Quantifier[])

Füge dem Baum einen Trigger-Ausdruck hinzu.

AddTrigger(String, Object, Quantifier[])

Füge dem Baum einen Trigger-Ausdruck hinzu.

GenerateGraph(String)

Erzeugt einen Graphen zu einem gegebenen Pfad.

Matches(Object)

Gib die möglichen Übereinstimmungen im aktuellen Zustand zurück.

RemoveTrigger(Trigger)

Entfernen Sie den Auslöser vom Baum.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

TreeToString(Int32)

Generiere eine Zeichenkette, die den Baum beschreibt.

VerifyTree()

Überprüfen Sie, ob der Baum die Spezialisierungs-/Generalisierungsinvarianten erfüllt.

Gilt für: