Package org.codehaus.groovy.runtime
Class NullObject
- java.lang.Object
- 
- groovy.lang.GroovyObjectSupport
- 
- org.codehaus.groovy.runtime.NullObject
 
 
- 
- All Implemented Interfaces:
- GroovyObject
 
 public class NullObject extends GroovyObjectSupport 
- 
- 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanasBoolean()A null object always coerces to false.ObjectasType(Class c)Type conversion method for null.Objectclone()Since this is implemented as a singleton, we should avoid the use of the clone methodbooleanequals(Object to)null is only equal to nullstatic NullObjectgetNullObject()get the NullObject referenceObjectgetProperty(String property)Tries to get a property on null, which will always failinthashCode()ObjectinvokeMethod(String name, Object args)Tries to invoke a method on null, which will always failbooleanis(Object other)The method "is" is used to test for equal references.Iteratoriterator()iterator() method to be able to iterate on null.Objectplus(Object o)Fallback for null+null.Objectplus(String s)Allows to add a String to null.voidsetProperty(String property, Object newValue)Tries to set a property on null, which will always failStringtoString()<T> Twith(Closure<T> closure)Allows the closure to be called for NullObject- 
Methods inherited from class groovy.lang.GroovyObjectSupportgetMetaClass, setMetaClass
 
- 
 
- 
- 
- 
Method Detail- 
getNullObjectpublic static NullObject getNullObject() get the NullObject reference- Returns:
- the null object
 
 - 
clonepublic Object clone() Since this is implemented as a singleton, we should avoid the use of the clone method
 - 
getPropertypublic Object getProperty(String property) Tries to get a property on null, which will always fail- Parameters:
- property- - the property to get
- Returns:
- a NPE
 
 - 
withpublic <T> T with(Closure<T> closure) Allows the closure to be called for NullObject- Parameters:
- closure- the closure to call on the object
- Returns:
- result of calling the closure
 
 - 
setPropertypublic void setProperty(String property, Object newValue) Tries to set a property on null, which will always fail- Parameters:
- property- - the proprty to set
- newValue- - the new value of the property
 
 - 
invokeMethodpublic Object invokeMethod(String name, Object args) Tries to invoke a method on null, which will always fail- Parameters:
- name- the name of the method to invoke
- args- - arguments to the method
- Returns:
- a NPE
 
 - 
equalspublic boolean equals(Object to) null is only equal to null
 - 
iteratorpublic Iterator iterator() iterator() method to be able to iterate on null. Note: this part is from Invoker- Returns:
- an iterator for an empty list
 
 - 
pluspublic Object plus(String s) Allows to add a String to null. The result is concatenated String of the result of calling toString() on this object and the String in the parameter.- Parameters:
- s- - the String to concatenate
- Returns:
- the concatenated string
 
 - 
pluspublic Object plus(Object o) Fallback for null+null. The result is always a NPE. The plus(String) version will catch the case of adding a non null String to null.- Parameters:
- o- - the Object
- Returns:
- nothing
 
 - 
ispublic boolean is(Object other) The method "is" is used to test for equal references. This method will return true only if the given parameter is null- Parameters:
- other- - the object to test
- Returns:
- true if other is null
 
 - 
asTypepublic Object asType(Class c) Type conversion method for null.- Parameters:
- c- - the class to convert to
- Returns:
- always null
 
 - 
asBooleanpublic boolean asBoolean() A null object always coerces to false.- Returns:
- false
 
 
- 
 
-