class_docstr: Base class for Hoeffding Decision Trees.
  
  This is an **abstract class**, so it cannot be used directly. It defines base operations
  and properties that all the Hoeffding decision trees must inherit or implement according to
  their own design.
  
  Parameters
  ----------
  max_depth
      The maximum depth a tree can reach. If `None`, the tree will grow indefinitely.
  binary_split
      If True, only allow binary splits.
  max_size
      The max size of the tree, in Megabytes (MB).
  memory_estimate_period
      Interval (number of processed instances) between memory consumption checks.
  stop_mem_management
      If True, stop growing as soon as memory limit is hit.
  remove_poor_attrs
      If True, disable poor attributes to reduce memory usage.
  merit_preprune
      If True, enable merit-based tree pre-pruning.
docstr: Create a new learning node.
  
  The characteristics of the learning node depends on the tree algorithm.
  
  Parameters
  ----------
  initial_stats
      Target statistics set from the parent node.
  parent
      Parent node to inherit from.
  
  Returns
  -------
  A new learning node.
code: def _new_leaf(
      self,
      initial_stats: dict | None = None,
      parent: HTLeaf | DTBranch | None = None,
  ) -> HTLeaf:
      """Create a new learning node.
  
      The characteristics of the learning node depends on the tree algorithm.
  
      Parameters
      ----------
      initial_stats
          Target statistics set from the parent node.
      parent
          Parent node to inherit from.
  
      Returns
      -------
      A new learning node.
      """
  
imports: from __future__ import annotations
  import collections
  import functools
  import io
  import math
  from abc import ABC, abstractmethod
  from river import base
  from river.utils.norm import normalize_values_in_dict
  from .nodes.branch import DTBranch, NominalBinaryBranch, NominalMultiwayBranch, NumericBinaryBranch, NumericMultiwayBranch
  from .nodes.leaf import HTLeaf
  from .utils import calculate_object_size
label_desc: Use image node_id 14 for calling the HoeffdingTree obj's underlying member method code with example usage: obj._new_leaf(initial_stats, parent) without return types