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

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `Script()` |
    `protected` | `Script​(Binding binding)` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    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 Detail

    - #### Script

          protected Script()

    - #### Script

          protected Script​(Binding binding)

  - ### Method Detail

    - #### 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`