Compartir a través de


GKRuleSystem Clase

Definición

Mantiene una colección de GKRule objetos, activandolos según corresponda.

[Foundation.Register("GKRuleSystem", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 9, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 11, ObjCRuntime.PlatformArchitecture.Arch64, null)]
public class GKRuleSystem : Foundation.NSObject
type GKRuleSystem = class
    inherit NSObject
Herencia
GKRuleSystem
Atributos

Comentarios

La GKRuleSystem clase permite a los desarrolladores crear sistemas expertos. Se admiten sistemas clásicos y lógicos aproximadas.

En cualquier momento, un GKRule objeto está en la Agenda colección de reglas que se va a evaluar o la Executed colección. El Reset() método vuelve a mover todas las reglas a la Agenda colección.

El método Evaluate() evalúa los predicados de cada regla de Agenda, según su Salience y, secundariamente, el orden en el que se agregaron a .GKRuleSystem Las reglas cuyo predicado se evalúa para true que se ejecute su función de acción y se coloquen en la Executed colección.

A continuación se muestra el desafío "FizzBuzz": si un número es divisible uniformemente en 3, genera "fizz". Si se puede dividir uniformemente en 5, genera "buzz". De lo contrario, genera el número en sí. Tenga en cuenta que este código establece correctamente en output "buzzfizz" en una entrada de 15, ya que y fizzRulebuzzRule se evalúan como true.

var clearRule = GKRule.FromPredicate ((rules) => reset, rules => {
	output = "";
	reset = false;
});
clearRule.Salience = 1;

var fizzRule = GKRule.FromPredicate (mod (3), rules => {
	output += "fizz";
});
fizzRule.Salience = 2;
var buzzRule = GKRule.FromPredicate (mod (5), rules => { 
	output += "buzz";
});
buzzRule.Salience = 2;

var outputRule = GKRule.FromPredicate (rules => true, rules => {
	System.Console.WriteLine (output == "" ? input.ToString () : output);
	reset = true;
});
outputRule.Salience = 3;

var rs = new GKRuleSystem ();
rs.AddRules (new [] {
	clearRule,
	fizzRule,
	buzzRule,
	outputRule
});

for (input = 1; input < 16; input++) {
	rs.Evaluate ();
	rs.Reset ();
}

Constructores

GKRuleSystem()

El constructor predeterminado inicializa una nueva instancia de esta clase.

GKRuleSystem(IntPtr)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Llamado por el entorno de ejecución.

GKRuleSystem(NSObjectFlag)

Constructor para llamar a las clases derivadas para omitir la inicialización y simplemente asignar el objeto.

Propiedades

Agenda

Colección de GKRule objetos cuyos predicados aún no se han evaluado como true.

Class

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
ClassHandle

Identificador de esta clase.

DebugDescription

Descripción significativa para el desarrollador de este objeto.

(Heredado de NSObject)
Description

Descripción del objeto, la versión objective-C de ToString.

(Heredado de NSObject)
Executed

Reglas del sistema que se han evaluado como true y han ejecutado sus acciones.

Facts

Conjunto arbitrario de objetos sobre los que mantiene GKRuleSystem un grado de verdad en el intervalo [0,1].

Handle

Identificador (puntero) a la representación del objeto no administrado.

(Heredado de NSObject)
IsDirectBinding

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
IsProxy

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
RetainCount

Devuelve el recuento de retención actual de Objective-C para el objeto .

(Heredado de NSObject)
Rules

Todas las reglas del sistema, ya sean en Agenda o Executed.

Self

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
State

Diccionario mutable destinado a contener la información de estado sobre la que opera.Rules

Superclass

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
SuperHandle

Identificador usado para representar los métodos de la clase base para este NSObject.

(Heredado de NSObject)
Zone

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)

Métodos

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

Registra un objeto para que se observe externamente (mediante NSString keyPath).   Los cambios observados se envían al método de objeto ObserveValue(NSString, NSObject, NSDictionary, IntPtr) del observador.

(Heredado de NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

Registra un objeto para que se observe externamente (mediante keyPath de cadena).   Los cambios observados se envían al método de objeto ObserveValue(NSString, NSObject, NSDictionary, IntPtr) del observador.

(Heredado de NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registra un objeto para que se observe externamente mediante un método arbitrario.

(Heredado de NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registra un objeto para que se observe externamente mediante un método arbitrario.

(Heredado de NSObject)
AddRule(GKRule)

Agrega rule al sistema, colocándolo en .Agenda

AddRules(GKRule[])

Agrega rules al sistema, colocándolos en .Agenda

AssertFact(NSObject)

Agrega a fact la base de conocimiento del sistema, con una calificación de 1,0.

AssertFact(NSObject, Single)

Agrega a fact la base de conocimiento del sistema, lo que aumenta su valor verdadero por grade.

AwakeFromNib()

Se llama después de cargar el objeto desde el archivo nib. Los invalidadores deben llamar a base. AwakeFromNib().

(Heredado de NSObject)
BeginInvokeOnMainThread(Action)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Invoca de forma asincrónica el código especificado en el subproceso principal de la interfaz de usuario.

(Heredado de NSObject)
Bind(NSString, NSObject, String, NSDictionary)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Bind(String, NSObject, String, NSDictionary)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
BindingInfo(String)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
BindingOptionDescriptions(String)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
BindingValueClass(String)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
CommitEditing()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
CommitEditing(NSObject, Selector, IntPtr)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
ConformsToProtocol(IntPtr)

Se invoca para determinar si este objeto implementa el protocolo especificado.

(Heredado de NSObject)
Copy()

Realiza una copia del objeto Objective-C subyacente.

(Heredado de NSObject)
DangerousAutorelease()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
DangerousRelease()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
DangerousRetain()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

Indica que se ha producido un cambio en los índices de una relación a varios.

(Heredado de NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
DidChangeValue(String)

Indica que se ha producido un cambio en la clave especificada.

(Heredado de NSObject)
Dispose()

Libera los recursos usados por el objeto NSObject.

(Heredado de NSObject)
Dispose(Boolean)

Libera los recursos usados por el objeto NSObject.

(Heredado de NSObject)
DoesNotRecognizeSelector(Selector)

Indica que este objeto no reconoce el selector especificado.

(Heredado de NSObject)
Equals(NSObject)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Equals(Object)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Evaluate()

Evalúa los predicados de Agenda y ejecuta las acciones de las que evalúan en true.

ExposedBindings()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetBindingInfo(NSString)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetBindingOptionDescriptions(NSString)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetBindingValueClass(NSString)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

Recupera los valores de las claves especificadas.

(Heredado de NSObject)
GetGrade(NSObject)

Recupera el grado de verdad para .fact

GetHashCode()

Genera un código hash para la instancia actual.

(Heredado de NSObject)
GetMaximumGrade(NSObject[])

Recupera el grado máximo de verdad entre .facts (OR aproximada)

GetMethodForSelector(Selector)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetMinimumGrade(NSObject[])

Recupera el grado mínimo de verdad entre .facts (AND aproximada)

GetNativeField(String)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
GetNativeHash()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Init()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
InitializeHandle(IntPtr)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
InitializeHandle(IntPtr, String)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Invoke(Action, Double)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Invoke(Action, TimeSpan)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
InvokeOnMainThread(Action)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
InvokeOnMainThread(Selector, NSObject)

Invoca sincrónicamente el código especificado en el subproceso principal de la interfaz de usuario.

(Heredado de NSObject)
IsEqual(NSObject)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
IsKindOfClass(Class)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
IsMemberOfClass(Class)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
MarkDirty()

Promueve un objeto del mismo nivel normal (IsDirectBinding es true) en un objeto toggleref.

(Heredado de NSObject)
MutableCopy()

Crea una copia mutable del objeto NSObject especificado.

(Heredado de NSObject)
ObjectDidEndEditing(NSObject)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

Indica que el valor de keyPath especificado con respecto a este objeto ha cambiado.

(Heredado de NSObject)
PerformSelector(Selector)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PerformSelector(Selector, NSObject)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, Double)

Invoca el selector en la instancia actual y, si no obj es NULL, lo pasa como su único parámetro.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, Double, NSString[])

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PerformSelector(Selector, NSObject, NSObject)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[])

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
PrepareForInterfaceBuilder()

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
RemoveAllRules()

Quita todos los GKRule objetos de .GKRuleSystem

RemoveObserver(NSObject, NSString)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath especificado.

(Heredado de NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath y el contexto especificados.

(Heredado de NSObject)
RemoveObserver(NSObject, String)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath especificado.

(Heredado de NSObject)
RemoveObserver(NSObject, String, IntPtr)

Impide que el observador especificado reciba más notificaciones de valores modificados para el keyPath y el contexto especificados.

(Heredado de NSObject)
Reset()

Mueve todos los GKRule objetos de la Executed colección a Agenda.

RespondsToSelector(Selector)

Si este objeto reconoce el selector especificado.

(Heredado de NSObject)
RetractFact(NSObject)

Quita de fact la Facts colección .

RetractFact(NSObject, Single)

Resta grade de la confianza interna en fact. Si la confianza interna cae a 0,0, fact se quita .

SetNativeField(String, NSObject)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
SetNilValueForKey(NSString)

Establece el valor de la clave especificada en NULL.

(Heredado de NSObject)
SetValueForKey(NSObject, NSString)

Establece el valor de la propiedad especificada por la clave en el valor especificado.

(Heredado de NSObject)
SetValueForKeyPath(IntPtr, NSString)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Llamado por el entorno de ejecución.

(Heredado de NSObject)
SetValueForKeyPath(NSObject, NSString)

Establece el valor de una propiedad que se puede alcanzar mediante una ruta de acceso de claves.

(Heredado de NSObject)
SetValueForUndefinedKey(NSObject, NSString)

Indica un intento de escribir un valor en una clave no definida. Si no se reemplaza, genera una excepción NSUndefinedKeyException.

(Heredado de NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

Establece los valores de este NSObject en los del diccionario especificado.

(Heredado de NSObject)
ToString()

Devuelve una representación de cadena del valor de la instancia actual.

(Heredado de NSObject)
Unbind(NSString)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
Unbind(String)
Obsoletos.

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
ValueForKey(NSString)

Devuelve el valor de la propiedad asociada a la clave especificada.

(Heredado de NSObject)
ValueForKeyPath(NSString)

Devuelve el valor de una propiedad que se puede alcanzar mediante una ruta de acceso de clave.

(Heredado de NSObject)
ValueForUndefinedKey(NSString)

Indica un intento de leer un valor de una clave no definida. Si no se reemplaza, genera una excepción NSUndefinedKeyException.

(Heredado de NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

Indica que los valores de los índices especificados en la clave especificada están a punto de cambiar.

(Heredado de NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

(Heredado de NSObject)
WillChangeValue(String)

Indica que el valor de la clave especificada está a punto de cambiar.

(Heredado de NSObject)

Métodos de extensión

ObjectDidBeginEditing(NSObject, INSEditor)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

ObjectDidEndEditing(NSObject, INSEditor)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

GetValidModes(NSObject, NSFontPanel)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

ValidateToolbarItem(NSObject, NSToolbarItem)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

GetDebugDescription(INSObjectProtocol)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

BeginPreviewPanelControl(NSObject, QLPreviewPanel)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

EndPreviewPanelControl(NSObject, QLPreviewPanel)

Mantiene una colección de GKRule objetos, activandolos según corresponda.

GetAccessibilityCustomRotors(NSObject)

Obtiene la matriz de UIAccessibilityCustomRotor objetos adecuados para this el objeto .

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Establece la matriz de UIAccessibilityCustomRotor objetos adecuados para this el objeto .

Se aplica a

Consulte también