---
name: "CSS::DOM::Exception"
section: "3pm"
platform: "linux"
package: "libcss-dom-perl"
version: "0.17-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/CSS::DOM::Exception"
---

# CSS::DOM::Exception(3pm)

The Exception interface for CSS::DOM

## NAME

CSS::DOM::Exception - The Exception interface for CSS::DOM

## SYNOPSIS

```
  use CSS::DOM::Exception 'SYNTAX_ERR';
  eval {
          die new CSS::DOM::Exception
                  SYNTAX_ERR,
                  '1 is not a valid property declaration'
  };
  $@ == SYNTAX_ERR; # true
  print $@;    # prints "1 is not a valid property declaration\n";
```

## DESCRIPTION

This module implementations the W3C's DOMException  interface. CSS::DOM::Exception objects stringify to the message passed to the constructer and numify to the  error number (see below, under 'EXPORTS').

## METHODS

- new CSS::DOM::Exception $type, $message

  This class method creates a new exception object. `$type` is expected to be an integer (you can use the constants listed under 'EXPORTS'). `$message` is the error message.

## EXPORTS

The following constants are optionally exported. The descriptions are  copied from the DOM spec.

- INDEX\_SIZE\_ERR (1)

  If index or size is negative, or greater than the allowed value

- DOMSTRING\_SIZE\_ERR (2)

  If the specified range of text does not fit into a DOMString

- HIERARCHY\_REQUEST\_ERR (3)

  If any node is inserted somewhere it doesn't belong

- WRONG\_DOCUMENT\_ERR (4)

  If a node is used in a different document than the one that created it (that doesn't support it)

- INVALID\_CHARACTER\_ERR (5)

  If an invalid character is specified, such as in a name.

- NO\_DATA\_ALLOWED\_ERR (6)

  If data is specified for a node which does not support data

- NO\_MODIFICATION\_ALLOWED\_ERR (7)

  If an attempt is made to modify an object where modifications are not allowed

- NOT\_FOUND\_ERR (8)

  If an attempt was made to reference a node in a context where it does not exist

- NOT\_SUPPORTED\_ERR (9)

  If the implementation does not support the type of object requested

- INUSE\_ATTRIBUTE\_ERR (10)

  If an attempt is made to add an attribute that is already inuse elsewhere

- INVALID\_STATE\_ERR (11)

  If an attempt is made to use an object that is not, or is no longer,  usable

- SYNTAX\_ERR (12)

  If an invalid or illegal string is specified

- INVALID\_MODIFICATION\_ERR (13)

  If an attempt is made to modify the type of the underlying object

- NAMESPACE\_ERR (14)

  If an attempt is made to create or change an object in a way which is  incorrect with  regard to namespaces

- INVALID\_ACCESS\_ERR (15)

  If a parameter or an operation is not supported by the underlying object

## SEE ALSO

CSS::DOM, HTML::DOM::Exception
