opendp.domains module#

The domains modules provides functions for creating and using domains.

opendp.domains.atom_domain(bounds=None, nullable=False, T=None)[source]#

Construct an instance of AtomDomain.

atom_domain in Rust documentation.

Parameters:
  • bounds (Any) –

  • nullable (bool) –

  • T (Type Argument) – The type of the atom.

Return type:

Domain

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.domain_carrier_type(this)[source]#

Get the carrier type of a domain.

Parameters:

this (Domain) – The domain to retrieve the carrier type from.

Return type:

str

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.domain_debug(this)[source]#

Debug a domain.

Parameters:

this (Domain) – The domain to debug (stringify).

Return type:

str

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.domain_type(this)[source]#

Get the type of a domain.

Parameters:

this (Domain) – The domain to retrieve the type from.

Return type:

str

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.map_domain(key_domain, value_domain)[source]#

Construct an instance of MapDomain.

Parameters:
  • key_domain (Domain) – domain of keys in the hashmap

  • value_domain (Domain) – domain of values in the hashmap

Return type:

Domain

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.member(this, val)[source]#

Check membership in a domain.

Parameters:
  • this (Domain) – The domain to check membership in.

  • val (Any) – A potential element of the domain.

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.option_domain(element_domain, D=None)[source]#

Construct an instance of OptionDomain.

option_domain in Rust documentation.

Parameters:
Return type:

Domain

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.user_domain(identifier, member, descriptor=None)[source]#

Construct a new UserDomain. Any two instances of an UserDomain are equal if their string descriptors are equal. Contains a function used to check if any value is a member of the domain.

Parameters:
  • identifier (str) – A string description of the data domain.

  • member – A function used to test if a value is a member of the data domain.

  • descriptor – Additional constraints on the domain.

Return type:

Domain

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library

opendp.domains.vector_domain(atom_domain, size=None)[source]#

Construct an instance of VectorDomain.

Parameters:
  • atom_domain (Domain) – The inner domain.

  • size (Any) –

Return type:

Domain

Raises:
  • TypeError – if an argument’s type differs from the expected type

  • UnknownTypeException – if a type argument fails to parse

  • OpenDPException – packaged error from the core OpenDP library