class_docstr: A GeoJSON-like feature
  
  Notes
  -----
  Delegates geometry and properties to an instance of _Feature, which
  will become an extension class in Fiona 2.0.
class_docstr_tok: ["A","GeoJSON-like","feature","Notes","--","--","-","Delegates","geometry","and","properties","to","an","instance","of","_Feature",",","which","will","become","an","extension","class","in","Fiona","2.0","."]
code: def from_dict(cls, ob=None, **kwargs):
      if ob is not None:
          data = dict(getattr(ob, "__geo_interface__", ob))
          data.update(kwargs)
      else:
          data = kwargs
      geom_data = data.pop("geometry", None)
  
      if isinstance(geom_data, Geometry):
          geom = geom_data
      else:
          geom = (
              Geometry.from_dict(geom_data)
              if geom_data is not None
              else None
          )
  
      props_data = data.pop("properties", None)
  
      if isinstance(props_data, Properties):
          props = props_data
      else:
          props = (
              Properties(**props_data)
              if props_data is not None
              else None
          )
  
      fid = data.pop("id", None)
      return Feature(geometry=geom, id=fid, properties=props, **data)
  
imports: from binascii import hexlify
  from collections.abc import MutableMapping
  from enum import Enum
  import itertools
  from json import JSONEncoder
  from warnings import warn
  from fiona.errors import FionaDeprecationWarning
label_desc: Use image node_id 2 for calling the Feature obj's underlying member method code with example usage: obj.from_dict(cls, ob) and returns: Feature