C# Класс Prolog.Metastructure

Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
Context PrologContext

Private Properties

Свойство Тип Описание
CombineGoals Structure
MakeSuspension Metastructure
Prover IEnumerable

Открытые методы

Метод Описание
MetaMetaUnify ( Metastructure value, IEnumerable &filter ) : Metastructure

Merge the information from two Metastructures into one new metastructure.

MetaMetaUnify ( Metastructure theirMetaStructure, PrologContext context ) : Metastructure

Merge the information from two Metastructures into one new metastructure.

MetaTermUnify ( object value ) : IEnumerable

Called after the variable bound to this Metastructure is unified with a non-variable term.

MetaTermUnify ( object value, PrologContext contextOfBinding ) : void

Called after the variable bound to this Metastructure is unified with a non-variable term.

MetaVarUnify ( LogicVariable them, IEnumerable &filter ) : Metastructure

Called after the variable bound to this Metastructure is unified with an unbound variable that is not (itself) bound to a Metastructure.

MetaVarUnify ( LogicVariable l, PrologContext context ) : Metastructure

Called after the variable bound to this Metastructure is unified with an unbound variable that is not (itself) bound to a Metastructure.

Metastructure ( Structure delayedGoal, Structure frozenGoal, PrologContext prologContext ) : System

Create a new set of suspended goals.

Metastructure ( Structure delayedGoal, Structure frozenGoal, PrologContext prologContext, Metastructure old ) : System

Приватные методы

Метод Описание
CombineGoals ( Structure goal1, Structure goal2 ) : Structure
MakeSuspension ( Structure delayed, Structure frozen ) : Metastructure
Prover ( Structure goal ) : IEnumerable

Описание методов

MetaMetaUnify() публичный Метод

Merge the information from two Metastructures into one new metastructure.
public MetaMetaUnify ( Metastructure value, IEnumerable &filter ) : Metastructure
value Metastructure The Metastructure to merge with.
filter IEnumerable Test for whether the merging succeeded. Generally a woken goal.
Результат Metastructure

MetaMetaUnify() публичный Метод

Merge the information from two Metastructures into one new metastructure.
public MetaMetaUnify ( Metastructure theirMetaStructure, PrologContext context ) : Metastructure
theirMetaStructure Metastructure The Metastructure to merge with.
context PrologContext Context in which to execute suspended goals.
Результат Metastructure

MetaTermUnify() публичный Метод

Called after the variable bound to this Metastructure is unified with a non-variable term.
public MetaTermUnify ( object value ) : IEnumerable
value object The term to which to unify.
Результат IEnumerable

MetaTermUnify() публичный Метод

Called after the variable bound to this Metastructure is unified with a non-variable term.
public MetaTermUnify ( object value, PrologContext contextOfBinding ) : void
value object The term to which to unify
contextOfBinding PrologContext Context in which to execute suspended goals.
Результат void

MetaVarUnify() публичный Метод

Called after the variable bound to this Metastructure is unified with an unbound variable that is not (itself) bound to a Metastructure.
public MetaVarUnify ( LogicVariable them, IEnumerable &filter ) : Metastructure
them LogicVariable The logic variable with which to unify
filter IEnumerable Test for whether the merging succeeded. Generally a woken goal.
Результат Metastructure

MetaVarUnify() публичный Метод

Called after the variable bound to this Metastructure is unified with an unbound variable that is not (itself) bound to a Metastructure.
public MetaVarUnify ( LogicVariable l, PrologContext context ) : Metastructure
l LogicVariable The logic variable with which to Unify.
context PrologContext Context in which to execute suspended goals.
Результат Metastructure

Metastructure() публичный Метод

Create a new set of suspended goals.
public Metastructure ( Structure delayedGoal, Structure frozenGoal, PrologContext prologContext ) : System
delayedGoal Structure Goal to run upon unification with any value.
frozenGoal Structure Goal to run upon unification with a non-variable term.
prologContext PrologContext Context in which to run goals.
Результат System

Metastructure() публичный Метод

public Metastructure ( Structure delayedGoal, Structure frozenGoal, PrologContext prologContext, Metastructure old ) : System
delayedGoal Structure
frozenGoal Structure
prologContext PrologContext
old Metastructure
Результат System

Описание свойств

Context публичное свойство

Prolog context in which the goals were suspended. Logic variables (and hence meta structures) should never be shared across contexts without term copying.
public PrologContext,Prolog Context
Результат PrologContext