src/options/strip-spaces.js
function(ast) {
      let detected = [];

      var lastChild = ast.last();
      if (lastChild.is('space') &&
          lastChild.content !== '\n' &&
          lastChild.content.match(/^[ \n\t]+$/)) {
        detected.push(false);
      }

      ast.traverseByType('space', function(space) {
        if (space.content.match(/[ \t]\n/)) detected.push(false);
      });

      return detected;
    }
function(ast) {
      let detected = [];

      var lastChild = ast.last();
      if (lastChild.is('space') &&
          lastChild.content !== '\n' &&
          lastChild.content.match(/^[ \n\t]+$/)) {
        detected.push(false);
      }

      ast.traverseByType('space', function(space) {
        if (space.content.match(/[ \t]\n/)) detected.push(false);
      });

      return detected;
    }
Detects the value of an option at the tree node.
This option is treated as `true` by default, but any trailing
space would invalidate it.

@param {node} ast