code: public static String compile( URL baseURL, String lessData, Map<String, String> options, ReaderFactory readerFactory ) throws LessException {
          try {
              if( options == null ) {
                  options = Collections.emptyMap();
              }
              LessParser parser = new LessParser();
              parser.parse( baseURL, new StringReader( lessData ), readerFactory );
  
              boolean compress = Boolean.parseBoolean( options.get( COMPRESS ) );
              CssFormatter formatter = compress ? new CompressCssFormatter() : new CssFormatter();
              parser.parseLazy( formatter );
              StringBuilder builder = new StringBuilder();
              formatter.format( parser, baseURL, readerFactory, builder, options );
              return builder.toString();
          } catch( LessException ex ) {
              throw ex;
          } catch( Exception ex ) {
              throw new LessException( ex );
          }
      }
docs: Compile the less data from a string.
  
  @param baseURL
  the baseURL for import of external less data.
  @param lessData
  the input less data
  @param options
  some optional options, see constants for details
  @param readerFactory
  A factory for the readers for imports.
  @return the resulting less data
  @throws LessException
  if any error occur on compiling.