com.hp.hpl.jena.reasoner.rulesys.builtins
Class ListLength
java.lang.Object
com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin
com.hp.hpl.jena.reasoner.rulesys.builtins.ListLength
- All Implemented Interfaces:
- Builtin
public class ListLength
- extends BaseBuiltin
Bind the second arg to the length of the first arg treated as a list.
Fails if the list is malformed.
- Version:
- $Revision: 1.9 $ on $Date: 2008/01/02 12:06:20 $
- Author:
- Dave Reynolds
Method Summary |
boolean |
bodyCall(Node[] args,
int length,
RuleContext context)
This method is invoked when the builtin is called in a rule body. |
int |
getArgLength()
Return the expected number of arguments for this functor or 0 if the number is flexible. |
java.lang.String |
getName()
Return a name for this builtin, normally this will be the name of the
functor that will be used to invoke it. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ListLength
public ListLength()
getName
public java.lang.String getName()
- Return a name for this builtin, normally this will be the name of the
functor that will be used to invoke it.
getArgLength
public int getArgLength()
- Return the expected number of arguments for this functor or 0 if the number is flexible.
- Specified by:
getArgLength
in interface Builtin
- Overrides:
getArgLength
in class BaseBuiltin
bodyCall
public boolean bodyCall(Node[] args,
int length,
RuleContext context)
- This method is invoked when the builtin is called in a rule body.
- Specified by:
bodyCall
in interface Builtin
- Overrides:
bodyCall
in class BaseBuiltin
- Parameters:
args
- the array of argument values for the builtin, this is an array
of Nodes, some of which may be Node_RuleVariables.length
- the length of the argument list, may be less than the length of the args array
for some rule enginescontext
- an execution context giving access to other relevant data
- Returns:
- return true if the buildin predicate is deemed to have succeeded in
the current environment
Copyright � 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP