diff options
author | Charles Krinke | 2008-08-13 14:13:49 +0000 |
---|---|---|
committer | Charles Krinke | 2008-08-13 14:13:49 +0000 |
commit | 323ada012d3bed0c6f7a6d5d0ee14b409b7457c7 (patch) | |
tree | d5a2e30707baba7804aefb341774d6d51ca7b439 /OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs | |
parent | Thank you, tyre, for a patch that fixes a null reference in LSL (diff) | |
download | opensim-SC-323ada012d3bed0c6f7a6d5d0ee14b409b7457c7.zip opensim-SC-323ada012d3bed0c6f7a6d5d0ee14b409b7457c7.tar.gz opensim-SC-323ada012d3bed0c6f7a6d5d0ee14b409b7457c7.tar.bz2 opensim-SC-323ada012d3bed0c6f7a6d5d0ee14b409b7457c7.tar.xz |
Mantis#1931. Thank you kindly, Kinoc for a patch that:
* Yield Prolog 1.0.1 Released : it passes all but 9 of the
421 tests in the ISO Prolog test suite (97.8%) .
* support dynamic predicates and rules.
* support 'import' to use external static functions
improves connection to C# functions
* Matches Yield Prolog r831
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs index 8ef8de0..4d65f5b 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor.cs | |||
@@ -98,6 +98,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog | |||
98 | return make(Atom.a(name), args); | 98 | return make(Atom.a(name), args); |
99 | } | 99 | } |
100 | 100 | ||
101 | /// <summary> | ||
102 | /// If arg is another Functor, then succeed (yield once) if this and arg have the | ||
103 | /// same name and all functor args unify, otherwise fail (don't yield). | ||
104 | /// If arg is a Variable, then call its unify to unify with this. | ||
105 | /// Otherwise fail (don't yield). | ||
106 | /// </summary> | ||
107 | /// <param name="arg"></param> | ||
108 | /// <returns></returns> | ||
101 | public IEnumerable<bool> unify(object arg) | 109 | public IEnumerable<bool> unify(object arg) |
102 | { | 110 | { |
103 | arg = YP.getValue(arg); | 111 | arg = YP.getValue(arg); |