code: public static String convertClosureToSource(ReaderSource readerSource, ClosureExpression expression) throws Exception {
          String source = GeneralUtils.convertASTToSource(readerSource, expression);
          if (!source.startsWith("{")) {
              throw new Exception("Error converting ClosureExpression into source code. Closures must start with {. Found: " + source);
          }
          return source;
      }
docs: Converts a ClosureExpression into the String source.
  
  @param readerSource a source
  @param expression a closure. Can't be null
  @return the source the closure was created from
  @throws java.lang.IllegalArgumentException when expression is null
  @throws java.lang.Exception when closure can't be read from source