code: function extractPackageFile(content) {
    logger.trace('extractPackageFile()');
    /*
      1. match "class className < Formula"
      2. extract className
      3. extract url field (get depName from url)
      4. extract sha256 field
    */
    const cleanContent = removeComments(content);
    const className = extractClassName(cleanContent);
    if (!className) {
      logger.debug('Invalid class definition');
      return null;
    }
    const url = extractUrl(cleanContent);
    if (!url) {
      logger.debug('Invalid URL field');
    }
    const urlPathResult = parseUrlPath(url);
    let skipReason;
    let currentValue = null;
    let ownerName = null;
    let repoName = null;
    if (urlPathResult) {
      currentValue = urlPathResult.currentValue;
      ownerName = urlPathResult.ownerName;
      repoName = urlPathResult.repoName;
    } else {
      logger.debug('Error: Unsupported URL field');
      skipReason = 'unsupported-url';
    }
    const sha256 = extractSha256(cleanContent);
    if (!sha256 || sha256.length !== 64) {
      logger.debug('Error: Invalid sha256 field');
      skipReason = 'invalid-sha256';
    }
    const dep = {
      depName: `${ownerName}/${repoName}`,
      url,
      sha256,
      ownerName,
      repoName,
      currentValue,
      datasource: 'github',
    };
    if (skipReason) {
      dep.skipReason = skipReason;
      if (skipReason === 'unsupported-url') {
        dep.depName = className;
        dep.datasource = null;
      }
    }
    const deps = [dep];
    return { deps };
  }
docs: TODO: Maybe check if quotes/double-quotes are balanced