docstr: Updates h and c by calling lstm function.
  
  Args:
      x (~nnabla.Variable): Input N-D array with shape (batch_size, input_size).
      w_init (:obj:`nnabla.initializer.BaseInitializer` or :obj:`numpy.ndarray`, optional): Initializer for weight. By default, it is initialized with :obj:`nnabla.initializer.UniformInitializer` within the range determined by :obj:`nnabla.initializer.calc_uniform_lim_glorot`.  
      b_init (:obj:`nnabla.initializer.BaseInitializer` or :obj:`numpy.ndarray`, optional): Initializer for bias. By default, it is initialized with zeros if `with_bias` is `True`.
      fix_parameters (bool): When set to `True`, the weights and biases will not be updated.
docstr_tok: ["Updates","h","and","c","by","calling","lstm","function",".","Args",":","x","(","~nnabla.Variable",")",":","Input","N-D","array","with","shape","(","batch_size",",","input_size",")",".","w_init","(",":","obj",":","`","nnabla.initializer.BaseInitializer","`","or",":","obj",":","`","numpy.ndarray","`",",","optional",")",":","Initializer","for","weight",".","By","default",",","it","is","initialized","with",":","obj",":","`","nnabla.initializer.UniformInitializer","`","within","the","range","determined","by",":","obj",":","`","nnabla.initializer.calc_uniform_lim_glorot","`",".","b_init","(",":","obj",":","`","nnabla.initializer.BaseInitializer","`","or",":","obj",":","`","numpy.ndarray","`",",","optional",")",":","Initializer","for","bias",".","By","default",",","it","is","initialized","with","zeros","if","`","with_bias","`","is","`","True","`",".","fix_parameters","(","bool",")",":","When","set","to","`","True","`",",","the","weights","and","biases","will","not","be","updated","."]
code: def __call__(self, x, w_init=None, b_init=None, fix_parameters=False):
      """
      Updates h and c by calling lstm function.
  
      Args:
          x (~nnabla.Variable): Input N-D array with shape (batch_size, input_size).
          w_init (:obj:`nnabla.initializer.BaseInitializer` or :obj:`numpy.ndarray`, optional): Initializer for weight. By default, it is initialized with :obj:`nnabla.initializer.UniformInitializer` within the range determined by :obj:`nnabla.initializer.calc_uniform_lim_glorot`.
          b_init (:obj:`nnabla.initializer.BaseInitializer` or :obj:`numpy.ndarray`, optional): Initializer for bias. By default, it is initialized with zeros if `with_bias` is `True`.
          fix_parameters (bool): When set to `True`, the weights and biases will not be updated.
  
      """
      self.h, self.c = lstm_cell(
          x,
          self.h,
          self.c,
          self.state_size,
          w_init,
          b_init,
          fix_parameters=fix_parameters,
          name=self.name,
      )
      return self.h
  
imports: from six import exec_
  import numpy
  import nnabla
  import nnabla.functions
  from nnabla.parameter import get_parameter_or_create, get_parameter
  from nnabla.initializer import calc_uniform_lim_glorot, ConstantInitializer, NormalInitializer, UniformInitializer, WeightNormalizationScaleInitializer
label_desc: Use image node_id 3 for calling the LSTMCell obj's underlying member method code with example usage: obj.__call__(x, w_init, b_init, fix_parameters) and returns: self