Package groovy.lang

# Class Script

java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.lang.Script

All Implemented Interfaces:
  `GroovyObject`

Direct Known Subclasses:
  `DelegatingScript`, `GroovyTypeCheckingExtensionSupport.TypeCheckingDSL`

public abstract class Script extends GroovyObjectSupport
This object represents a Groovy script

Author:
  James Strachan, Guillaume Laforge

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Script()`
`protected`
`Script(Binding binding)`

## Method Summary

Modifier and Type
Method
Description
`Object`
`evaluate(File file)`
A helper method to allow the dynamic evaluation of groovy expressions using this scripts binding as the variable scope
`Object`
`evaluate(String expression)`
A helper method to allow the dynamic evaluation of groovy expressions using this scripts binding as the variable scope
`Binding`
`getBinding()`
`Object`
`getProperty(String property)`
Retrieves a property value.
`Object`
`invokeMethod(String name, Object args)`
Invoke a method (or closure in the binding) defined.
`void`
`print(Object value)`
Prints the value to the current 'out' variable which should be a PrintWriter or at least have a print() method defined on it.
`void`
`printf(String format, Object value)`
Prints a formatted string using the specified format string and argument.
`void`
`printf(String format, Object[] values)`
Prints a formatted string using the specified format string and arguments.
`void`
`println()`
Prints a newline to the current 'out' variable which should be a PrintWriter or at least have a println() method defined on it.
`void`
`println(Object value)`
Prints the value and a newline to the current 'out' variable which should be a PrintWriter or at least have a println() method defined on it.
`abstract Object`
`run()`
The main instance method of a script which has variables in scope as defined by the current `Binding` instance.
`void`
`run(File file, String[] arguments)`
A helper method to allow scripts to be run taking command line arguments
`void`
`setBinding(Binding binding)`
`void`
`setProperty(String property, Object newValue)`
Sets the given property to the new value.

### Methods inherited from class groovy.lang.GroovyObjectSupport

`getMetaClass, setMetaClass`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Script

protected Script()

### Script

protected Script(Binding binding)

## Method Details

### getBinding

public Binding getBinding()

### setBinding

public void setBinding(Binding binding)

### getProperty

public Object getProperty(String property)
Description copied from interface: `GroovyObject`
Retrieves a property value.

Specified by:
  `getProperty` in interface `GroovyObject`
Overrides:
  `getProperty` in class `GroovyObjectSupport`
Parameters:
  `property` - the name of the property of interest
Returns:
  the given property

### setProperty

public void setProperty(String property, Object newValue)
Description copied from interface: `GroovyObject`
Sets the given property to the new value.

Specified by:
  `setProperty` in interface `GroovyObject`
Overrides:
  `setProperty` in class `GroovyObjectSupport`
Parameters:
  `property` - the name of the property of interest
  `newValue` - the new value for the property

### invokeMethod

public Object invokeMethod(String name, Object args)
Invoke a method (or closure in the binding) defined.

Specified by:
  `invokeMethod` in interface `GroovyObject`
Overrides:
  `invokeMethod` in class `GroovyObjectSupport`
Parameters:
  `name` - method to call
  `args` - arguments to pass to the method
Returns:
  value

### run

public abstract Object run()
The main instance method of a script which has variables in scope as defined by the current `Binding` instance.

### println

public void println()
Prints a newline to the current 'out' variable which should be a PrintWriter or at least have a println() method defined on it. If there is no 'out' property then print to standard out.

### print

public void print(Object value)
Prints the value to the current 'out' variable which should be a PrintWriter or at least have a print() method defined on it. If there is no 'out' property then print to standard out.

### println

public void println(Object value)
Prints the value and a newline to the current 'out' variable which should be a PrintWriter or at least have a println() method defined on it. If there is no 'out' property then print to standard out.

### printf

public void printf(String format, Object value)
Prints a formatted string using the specified format string and argument.

Parameters:
  `format` - the format to follow
  `value` - the value to be formatted

### printf

public void printf(String format, Object[] values)
Prints a formatted string using the specified format string and arguments.

Parameters:
  `format` - the format to follow
  `values` - an array of values to be formatted

### evaluate

public Object evaluate(String expression) throws CompilationFailedException
A helper method to allow the dynamic evaluation of groovy expressions using this scripts binding as the variable scope

Parameters:
  `expression` - is the Groovy script expression to evaluate
Throws:
  `CompilationFailedException`

### evaluate

public Object evaluate(File file) throws CompilationFailedException, IOException
A helper method to allow the dynamic evaluation of groovy expressions using this scripts binding as the variable scope

Parameters:
  `file` - is the Groovy script to evaluate
Throws:
  `CompilationFailedException`
  `IOException`

### run

public void run(File file, String[] arguments) throws CompilationFailedException, IOException
A helper method to allow scripts to be run taking command line arguments

Throws:
  `CompilationFailedException`
  `IOException`