class_docstr: Base class establishing interface for stateful value generation.
  
  A `ValueGenerator` maintains a state, and each time `next` is called, a new
  value is generated and the state is advanced.
class_docstr_tok: ["Base","class","establishing","interface","for","stateful","value","generation",".","A","`","ValueGenerator","`","maintains","a","state",",","and","each","time","`","next","`","is","called",",","a","new","value","is","generated","and","the","state","is","advanced","."]
docstr: Gets next value and advances the ValueGenerator.
  
  Args:
    state: The current state.
  
  Returns:
    A pair (value, new_state) where value is the next value and new_state
      is the advanced state.
docstr_tok: ["Gets","next","value","and","advances","the","ValueGenerator",".","Args",":","state",":","The","current","state",".","Returns",":","A","pair","(","value",",","new_state",")","where","value","is","the","next","value","and","new_state","is","the","advanced","state","."]
code: def next(self, state):
      """Gets next value and advances the ValueGenerator.
  
      Args:
        state: The current state.
  
      Returns:
        A pair (value, new_state) where value is the next value and new_state
          is the advanced state.
      """
      raise NotImplementedError
  
imports: import abc
  import collections
  from typing import Any, Callable, Collection, NamedTuple, Optional, Tuple, Union
  import tensorflow
label_desc: Use image node_id 2 for calling the ValueGenerator obj's underlying member method code with example usage: obj.next(state) without return types