An implementation represents a single concrete implementation of an interface. There can be several implementations with the same version number (e.g. for different architectures, languages or ABIs).
*
| 
  #
  package_distro
   | : string | ; | |||
| 
  #
  mutable package_state
   | : package_state | ; | 
| 
  #
  dep_qdom
   | : Element.dependency_node Element.t | ; | |||
| 
  #
  dep_importance
   | : importance | ; | |||
| 
  #
  dep_iface
   | : General.iface_uri | ; | |||
| 
  #
  dep_src
   | : bool | ; | |||
| 
  #
  dep_restrictions
   | : restriction list | ; | |||
| 
  #
  dep_required_commands
   | : string list | ; | |||
| 
  #
  dep_if_os
   | : string option | ; | |||
| 
  #
  dep_use
   | : string option | ; | 
| 
  #
  mutable command_qdom
   | : Support.Qdom.element | ; | |||
| 
  #
  command_requires
   | : dependency list | ; | |||
| 
  #
  command_bindings
   | : Element.binding_node Element.t list | ; | 
| 
  #
  attrs
   | : Support.Qdom.AttrMap.t | ; | |||
| 
  #
  requires
   | : dependency list | ; | |||
| 
  #
  bindings
   | : Element.binding_node Element.t list | ; | |||
| 
  #
  commands
   | : command Support.Common.StringMap.t | ; | 
parse_dep local_dir elem parses the <requires>/<restricts> element.
local_dir is used to resolve relative interface names in local feeds
(use None for remote feeds).