com.hp.hpl.jena.reasoner.rulesys.builtins
Class ListLength

java.lang.Object
  extended by com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin
      extended by 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

Field Summary
 
Fields inherited from class com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin
BASE_URI
 
Constructor Summary
ListLength()
           
 
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 com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin
checkArgs, getArg, getURI, headAction, isMonotonic, isSafe
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ListLength

public ListLength()
Method Detail

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 engines
context - 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