表14-3 内部谓词简述
内部谓词及说明
* //2
?????乘法算术运算
+ //2
?????加法算术运算
- //2
????减法算术运算
/ //2?
????除法算术运算
assert/1? procedure (i)
?????在匹配的内部事实数据库的底部插入指定事实
asserta/1? procedure (i)
?????在匹配的内部事实数据库的顶部插入事实
assertz/1? procedure (i)
??????在匹配的内部事实数据库的底部插入事实
bound/1? determ (i)
?????检查一指定变量是否绑定到某个值
class_Name : () -> ::string ClassName procedure ().
?????这一编译时间谓词返回字符串ClassName,表示当前接口或类的名称
convert//2? procedure (i,i)
?????有检查的项转换
digitsOf//1? procedure (i)
?????返回指定浮点数论域的精度
div//2?
?????算术运算符,返回一整数除法的商
errorExi t : (::unsigned ErrorNumber) erroneous (i).
?????用指定返回代码ErrorNumber执行一次运行错误并设置内部错误信息
fail : () failure ().
?????调用回溯
finally/2? determ (i,i)
?????finally元谓词使应用程序保证清除代码Final_Predicates的执行,即使当代码块Do_Predicates的执行被中断。Final_Predicates在Do_Predicates之后立刻执行,即使Do_Predicates退出或失败。
findall/3? procedure (i,i,o)
?????收集一个非确定性谓词返回的所有解的列表
free/1? determ (i)
?????检查一变量是否是自由的
hasDomain/2? determ (i,i) procedure (i,o)
????检查变量 VariableName是否有论域 domainName.
lowerBound//1? procedure (i)
?????返回指定数字论域的低界
maxDigits//1? procedure (i)
?????检索与浮点指针论域domainName相应的基本论域的数字值(精度)
mod//2?
?????算术运算符,返回整数除法的余数
not/1? determ (i)
?????对子目标的结果(成功/失败)求反
predicate_fullname : () -> ::string PredicateFullName procedure ().
?????这一编辑时间谓词返回字符串PredicateFullName,它表示子句体中的predicate_name得到调用的谓词名字。返回的谓词名用一作用域加以限制。
predicate_name : () -> ::string PredicateName procedure ().
??????这一编辑时间谓词返回字符串PredicateFullName,它表示在其子句体中predicate_name得到调用的谓词名称.
retract/1? nondeterm (i) nondeterm (o)
?????从被匹配的内部事实数据库中除去一匹配的事实.
retractall/1? procedure (i)
????从被匹配的内部事实数据库中除去所有匹配的事实.
retractall/2? procedure (i,i)
?????从被指定的内部事实数据库FactsSectionName中除去所有匹配的事实.
sizeBitsOf//1? procedure (i)
?????检索内存中被指定论域DomainName的实体占用的位数
sizeOf//1? procedure (i)
?????检索内存中被指定项占用的字节数
sizeOfDomain//1? procedure (i)
?????检索内存中被指定论域DomainName的实体占用的字节数
sourceFile_LineNo : () -> ::unsigned procedure ().
?????返回在编译器中处理的源文件的当前行号
sourceFile_Name : () -> ::string procedure ().
?????返回在编译器中处理的源文件的名称
sourceFile_TimeStamp : () -> ::string procedure ().
?????返回表示编译器处理的源文件的日期和时间的字符串
succeed/0?
??? ?谓词succeed/0总是成功
toBinary//1? procedure (i)
?????将指定项转换为binary表示
toBoolean//1? procedure (i)
?????这一元谓词的用途是将一确定性调用(谓词或事实)转换为一返回布尔论域值的程序
toString//1? procedure (i)
?????将指定的项转换成字符串表示
toTerm//1? procedure (i)
?????将指定项SrcTerm的字符串/二进制表示转换成与返回值的PrologTerm变量论域相应的表示
trap/3? determ (i,o,i)
?????在设陷阱的谓词中捕获退出、中断和运行错误
tryConvert//2? determ (i,i)
????检查输入项InputTerm是否能严格地转换成指定论域returnDomain,并返回转换后的项ReturnTerm
uncheckedConvert//2? procedure (i,i)?
?????论域的无检查的转换
upperBound//1? procedure (i)
????返回指定数字论域的上界值