TriggerTree Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Drzewo wyzwalacza organizuje ewaluatorów według uogólniania/specjalizacji w celu ułatwienia korzystania z reguł.
public class TriggerTree
type TriggerTree = class
Public Class TriggerTree
- Dziedziczenie
-
TriggerTree
Uwagi
Wyrażenie wyzwalacza generuje wartość true, jeśli wyrażenie obliczone na ramce ma wartość true. Samo wyrażenie składa się z dowolnych funkcji logicznych ("predykatów") w połączeniu z && || !. Większość predykatów jest wyrażana przez przekazywaną ramę, ale mogą być czymś — istnieją nawet sposoby ich optymalizacji lub porównywania. Organizując ewaluatorów w drzewo (technicznie DAG), łatwiej jest używać reguł poprzez zmniejszenie sprzężenia między regułami. Jeśli na przykład reguła ma zastosowanie, jeśli jakiś predykat A ma wartość true, kolejna reguła, która ma zastosowanie, jeśli wartość A && B jest bardziej wyspecjalizowana. Jeśli drugie wyrażenie ma wartość true, ponieważ wiemy o relacji, możemy zignorować pierwszą regułę — nawet jeśli jej wyrażenie ma wartość true. Bez tego rodzaju możliwości, aby dodać drugą regułę, należy zmienić pierwszą, aby stała się A && !B.
Konstruktory
TriggerTree() |
Inicjuje nowe wystąpienie klasy TriggerTree. |
Właściwości
Comparers |
Pobiera wartość słownika z wartościami IPredicateComparer z kluczami ciągu. |
Optimizers |
Pobiera listę optymalizatorów do optymalizacji klauzul. |
Root |
Pobiera lub ustawia wartość węzła głównego. |
TotalTriggers |
Pobiera lub ustawia łączną liczbę wyzwalaczy. |
Metody
AddTrigger(Expression, Object, Quantifier[]) |
Dodaj wyrażenie wyzwalacza do drzewa. |
AddTrigger(String, Object, Quantifier[]) |
Dodaj wyrażenie wyzwalacza do drzewa. |
GenerateGraph(String) |
Generuje wykres dla danej ścieżki. |
Matches(Object) |
Zwróć możliwe dopasowania, biorąc pod uwagę bieżący stan. |
RemoveTrigger(Trigger) |
Usuń wyzwalacz z drzewa. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. |
TreeToString(Int32) |
Wygeneruj ciąg opisujący drzewo. |
VerifyTree() |
Sprawdź, czy drzewo spełnia różnice specjalizacji/uogólniania. |