Package cssutils :: Package css :: Module csscharsetrule :: Class CSSCharsetRule
[hide private]
[frames] | no frames]

Class CSSCharsetRule

source code

object --+            
         |            
 util.Base --+        
             |        
    util.Base2 --+    
                 |    
   cssrule.CSSRule --+
                     |
                    CSSCharsetRule

The CSSCharsetRule interface represents an @charset rule in a CSS style sheet. The value of the encoding attribute does not affect the encoding of text data in the DOM objects; this encoding is always UTF-16 (also in Python?). After a stylesheet is loaded, the value of the encoding attribute is the value found in the @charset rule. If there was no @charset in the original document, then no CSSCharsetRule is created. The value of the encoding attribute may also be used as a hint for the encoding used on serialization of the style sheet.

The value of the @charset rule (and therefore of the CSSCharsetRule) may not correspond to the encoding the document actually came in; character encoding information e.g. in an HTTP header, has priority (see CSS document representation) but this is not reflected in the CSSCharsetRule.

Properties

cssText: of type DOMString
The parsable textual representation of this rule
encoding: of type DOMString
The encoding information used in this @charset rule.

Inherits properties from CSSRule

Format

charsetrule:
CHARSET_SYM S* STRING S* ';'
BUT: Only valid format is:
@charset "ENCODING";
Nested Classes [hide private]

Inherited from util.Base (private): _prods

Instance Methods [hide private]
 
__init__(self, encoding=None, parentRule=None, parentStyleSheet=None, readonly=False)
a valid character encoding
source code
 
_getCssText(self)
returns serialized property cssText
source code
 
_setCssText(self, cssText)
DOMException on setting
source code
 
_setEncoding(self, encoding)
DOMException on setting
source code
 
__repr__(self)
repr(x)
source code
 
__str__(self)
str(x)
source code

Inherited from cssrule.CSSRule (private): _setAtkeyword

Inherited from util.Base2 (private): _adddefaultproductions, _setSeq, _tempSeq

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__

Static Methods [hide private]

Inherited from util.Base (private): _normalize

Class Variables [hide private]

Inherited from cssrule.CSSRule: CHARSET_RULE, COMMENT, FONT_FACE_RULE, IMPORT_RULE, MEDIA_RULE, NAMESPACE_RULE, PAGE_RULE, STYLE_RULE, UNKNOWN_RULE

Inherited from cssrule.CSSRule (private): _typestrings

Inherited from util.Base (private): _SHORTHANDPROPERTIES, _log

Properties [hide private]
  type
The type of this rule, as defined by a CSSRule type constant.
  cssText
(DOM) The parsable textual representation.
  encoding
(DOM)The encoding information used in this @charset rule.
  wellformed
READONLY

Inherited from cssrule.CSSRule: atkeyword, parentRule, parentStyleSheet, typeString

Inherited from util.Base2: seq

Inherited from object: __class__

Method Details [hide private]

__init__(self, encoding=None, parentRule=None, parentStyleSheet=None, readonly=False)
(Constructor)

source code 
encoding:
a valid character encoding
readonly:
defaults to False, not used yet

if readonly allows setting of properties in constructor only

Overrides: object.__init__

_setCssText(self, cssText)

source code 

DOMException on setting

  • SYNTAX_ERR: (self) Raised if the specified CSS string value has a syntax error and is unparsable.
  • INVALID_MODIFICATION_ERR: (self) Raised if the specified CSS string value represents a different type of rule than the current one.
  • HIERARCHY_REQUEST_ERR: (CSSStylesheet) Raised if the rule cannot be inserted at this point in the style sheet.
  • NO_MODIFICATION_ALLOWED_ERR: (CSSRule) Raised if the rule is readonly.
Overrides: cssrule.CSSRule._setCssText

_setEncoding(self, encoding)

source code 

DOMException on setting

  • NO_MODIFICATION_ALLOWED_ERR: (CSSRule) Raised if this encoding rule is readonly.
  • SYNTAX_ERR: (self) Raised if the specified encoding value has a syntax error and is unparsable. Currently only valid Python encodings are allowed.

__repr__(self)
(Representation operator)

source code 

repr(x)

Overrides: object.__repr__
(inherited documentation)

__str__(self)
(Informal representation operator)

source code 

str(x)

Overrides: object.__str__
(inherited documentation)

Property Details [hide private]

type

The type of this rule, as defined by a CSSRule type constant. Overwritten in derived classes.

The expectation is that binding-specific casting methods can be used to cast down from an instance of the CSSRule interface to the specific derived interface implied by the type. (Casting not for this Python implementation I guess...)

Get Method:
unreachable(self)

cssText

(DOM) The parsable textual representation.
Get Method:
_getCssText(self) - returns serialized property cssText
Set Method:
_setCssText(self, cssText) - DOMException on setting

encoding

(DOM)The encoding information used in this @charset rule.
Get Method:
unreachable(self)
Set Method:
_setEncoding(self, encoding) - DOMException on setting

wellformed

READONLY
Get Method:
unreachable(self)