code: function getMeta(object) {
    assertObject(object);
  
    let data = {};
    if (hasOwnSymbol(object, metaSymbol)) {
      Object.assign(data, object[metaSymbol] || {});
    }
    Object.assign(data, metadata.get(object) || {});
  
    if (data['~inheritsMeta']) {
      return Object.assign({}, getMeta(data['~inheritsMeta']()), data);
    } else {
      return data;
    }
  }
docs: /*~
  Retrieves meta-data from an object (either set directly or associated
  through the global `WeakMap`).