Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  StyleSheetInfo.h

  Sprache: C
 

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef mozilla_StyleSheetInfo_h
#define mozilla_StyleSheetInfo_h

#include "mozilla/CORSMode.h"
#include "mozilla/dom/SRIMetadata.h"
#include "nsIReferrerInfo.h"

class nsIPrincipal;
class nsIURI;

namespace mozilla {
class StyleSheet;
struct StyleStylesheetContents;
enum class StyleOrigin : uint8_t;
struct URLExtraData;

/**
 * Struct for data common to CSSStyleSheetInner and ServoStyleSheet.
 */

struct StyleSheetInfo final {
  using ReferrerPolicy = dom::ReferrerPolicy;

  StyleSheetInfo(CORSMode aCORSMode, const dom::SRIMetadata& aIntegrity,
                 StyleOrigin);

  // FIXME(emilio): aCopy should be const.
  StyleSheetInfo(StyleSheetInfo& aCopy, StyleSheet* aPrimarySheet);

  ~StyleSheetInfo();

  StyleSheetInfo* CloneFor(StyleSheet* aPrimarySheet);

  void AddSheet(StyleSheet* aSheet);
  void RemoveSheet(StyleSheet* aSheet);

  size_t SizeOfIncludingThis(MallocSizeOf aMallocSizeOf) const;

  const CORSMode mCORSMode;
  dom::SRIMetadata mIntegrity;
  // https://drafts.csswg.org/cssom/#concept-css-style-sheet-origin-clean-flag
  bool mOriginClean = true;

  // Pointer to the list of child sheets. This is all fundamentally broken,
  // because each of the child sheets has a unique parent... We can only hope
  // (and currently this is the case) that any time page JS can get its hands on
  // a child sheet that means we've already ensured unique infos throughout its
  // parent chain and things are good.
  nsTArray<RefPtr<StyleSheet>> mChildren;

  // If a SourceMap or X-SourceMap response header is seen, this is
  // the value.  If both are seen, SourceMap is preferred.  If neither
  // is seen, this will be an empty string.
  nsCString mSourceMapURL;

  RefPtr<const StyleStylesheetContents> mContents;

  // HACK: This must be the after any member rust accesses in order to not cause
  // issues on i686-android. Bindgen generates an opaque blob of [u64; N] for
  // types it doesn't understand like AutoTArray, but turns out u64 is not
  // 8-byte aligned on this arch (wtf), which would cause other members rust
  // cares about to be misaligned.
  AutoTArray<StyleSheet*, 8> mSheets;

#ifdef DEBUG
  bool mPrincipalSet = false;
#endif
};

}  // namespace mozilla

#endif  // mozilla_StyleSheetInfo_h

Messung V0.5 in Prozent
C=89 H=89 G=88

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=277311
#Domains=752002