[hide private]
[frames] | no frames]

[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- object: The most base type
  - netaddr.address.Addr: The base class containing common functionality for all subclasses representing various network address types.
    - netaddr.address.EUI: Represents an IEEE EUI (Extended Unique Identifier) indentifier.
    - netaddr.address.IP: Represents individual IPv4 and IPv6 addresses.
  - netaddr.strategy.AddrStrategy: Basic support for common operations performed on each address type
    - netaddr.strategy.EUI48Strategy: Implements the operations that can be performed on an IEEE 48-bit EUI (Extended Unique Identifer) a.k.a.
    - netaddr.strategy.IPv4Strategy: An AddrStrategy for IPv4 address processing.
    - netaddr.strategy.IPv6Strategy: An AddrStrategy for IPv6 address processing.
  - netaddr.address.AddrTypeDescriptor: A descriptor that checks addr_type property assignments for validity and also keeps the strategy property in sync with any changes made.
  - netaddr.address.AddrValueDescriptor: A descriptor that checks assignments to the named parameter passed to the constructor.
  - exceptions.BaseException: Common base class for all exceptions
    - exceptions.Exception: Common base class for all non-exit exceptions.
      - netaddr.AddrConversionError: An Exception indicating a failure to convert between address types or notations.
      - netaddr.AddrFormatError: An Exception indicating that a network address format is not recognised.
      - netaddr.eui.NotRegisteredError: An Exception indicating that an OUI or IAB was not found in the IEEE Registry.
  - netaddr.address.FormatDescriptor: A descriptor that checks formatter property assignments for validity.
  - netaddr.eui.IAB: Represents an individual IEEE IAB (Individual Address Block) identifier.
  - netaddr.address.IPRange: Represents arbitrary contiguous blocks of IPv4 and IPv6 addresses using only a lower and upper bound IP address.
    - netaddr.address.CIDR: Represents blocks of IPv4 and IPv6 addresses using CIDR (Classless Inter-Domain Routing) notation.
    - netaddr.address.Wildcard: Represents blocks of IPv4 addresses using a wildcard or glob style syntax.
  - netaddr.eui.OUI: Represents an individual IEEE OUI (Organisationally Unique Identifier) identifier.
  - netaddr.address.PrefixLenDescriptor: A descriptor that checks prefixlen property assignments for validity based on address type.
  - netaddr.core.Publisher: A 'push' publisher that maintains a list of Subscriber objects notifying them of state changes when its subclasses encounter events of interest.
    - netaddr.eui.IABIndexParser: A parser that processes IAB (Individual Address Block) registration file data published by the IEEE.
    - netaddr.ip.LineRecordParser: A configurable Parser that understands how to parse line based records.
      - netaddr.ip.IPv4Parser: A LineRecordParser that understands how to parse and retrieve data records from the IANA IPv4 address space file.
      - netaddr.ip.IPv6Parser: A LineRecordParser that understands how to parse and retrieve data records from the IANA IPv6 address space file.
      - netaddr.ip.MulticastParser: A LineParser that knows how to process the IANA IPv4 multicast address allocation file.
    - netaddr.eui.OUIIndexParser: A parser that processes OUI (Organisationally Unique Identifier) registration file data published by the IEEE.
  - netaddr.address.StrategyDescriptor: A descriptor that checks strategy property assignments for validity and also keeps the addr_type property in sync with any changes made.
  - netaddr.core.Subscriber: Abstract class defining interface expected by a Publisher that concrete subclass instances register with to receive updates from.
    - netaddr.ip.DictUpdater: Concrete Subscriber that inserts records received from a Publisher into a dictionary.
    - netaddr.eui.FileIndexer: Stores index data found by a parser in a CSV file
    - netaddr.core.PrettyPrinter: Concrete Subscriber that uses the pprint module to format all data from updates received writing them to any file-like object.
  - set: set(iterable) --> set object
    - netaddr.address.IPRangeSet: *EXPERIMENTAL* A customised Python set class that deals with collections of IPRange class and subclass instances.