C# 클래스 Prolog.Metastructure

파일 보기 프로젝트 열기: ianhorswill/UnityProlog 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
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