code: function parseOptions(options = {}) {
              const before = options.before !== false;
              const after = options.after !== false;
              const defaultValue = {
                  before: before ? expectSpaceBefore : unexpectSpaceBefore,
                  after: after ? expectSpaceAfter : unexpectSpaceAfter
              };
              const overrides = (options && options.overrides) || {};
              const retv = Object.create(null);
  
              for (let i = 0; i < KEYS.length; ++i) {
                  const key = KEYS[i];
                  const override = overrides[key];
  
                  if (override) {
                      const thisBefore = ("before" in override) ? override.before : before;
                      const thisAfter = ("after" in override) ? override.after : after;
  
                      retv[key] = {
                          before: thisBefore ? expectSpaceBefore : unexpectSpaceBefore,
                          after: thisAfter ? expectSpaceAfter : unexpectSpaceAfter
                      };
                  } else {
                      retv[key] = defaultValue;
                  }
              }
  
              return retv;
          }
docs: Parses the option object and determines check methods for each keyword.
  
  @param {Object|undefined} options - The option object to parse.
  @returns {Object} - Normalized option object.
  Keys are keywords (there are for every keyword).
  Values are instances of `{"before": function, "after": function}`.