class_docstr: Class for sampling batches of tasks, represented as `~EnvUpdate`s.
  
  Attributes:
      n_tasks (int or None): Number of tasks, if known and finite.
class_docstr_tok: ["Class","for","sampling","batches","of","tasks",",","represented","as","`","~EnvUpdate","`","s",".","Attributes",":","n_tasks","(","int","or","None",")",":","Number","of","tasks",",","if","known","and","finite","."]
docstr: int or None: The number of tasks if known and finite.
docstr_tok: ["int","or","None",":","The","number","of","tasks","if","known","and","finite","."]
code: def n_tasks(self):
      """int or None: The number of tasks if known and finite."""
      return None
  
imports: import abc
  import copy
  import math
  import numpy
  from garage.envs import GymEnv, TaskNameWrapper, TaskOnehotWrapper
  from garage.sampler.env_update import ExistingEnvUpdate, NewEnvUpdate, SetTaskUpdate
label_desc: Use image node_id 2 for calling the TaskSampler obj's underlying member method code with example usage: obj.n_tasks() and returns: None