public static <T> T use(List<Class> categoryClasses, Closure<T> closure) {
        return THREAD_INFO.getInfo().use(categoryClasses, closure);
    }
public static < T > T use ( List < Class > categoryClasses , Closure < T > closure ) { return THREAD_INFO . getInfo ( ) . use ( categoryClasses , closure ) ; }
Create a scope based on given categoryClasses and invoke closure within that scope.

@param categoryClasses the list of classes containing category methods
@param closure the closure during which to make the category class methods available
@return the value returned from the closure