code: static boolean isValidPropertyName(FeatureSet mode, String name) {
      if (isValidSimpleName(name)) {
        return true;
      } else {
        return mode.has(Feature.KEYWORDS_AS_PROPERTIES) && TokenStream.isKeyword(name);
      }
    }
docs: Determines whether the given name can appear on the right side of the dot operator. Many
  properties (like reserved words) cannot, in ES3.