class_docstr: Namespace full of magic methods that dig around the public interface of LookupTables.
  
  These methods are not on the public interface by design to prevent these access patterns from
  being utilized in "normal" Lambda code.
class_docstr_tok: ["Namespace","full","of","magic","methods","that","dig","around","the","public","interface","of","LookupTables",".","These","methods","are","not","on","the","public","interface","by","design","to","prevent","these","access","patterns","from","being","utilized","in","``","normal","''","Lambda","code","."]
docstr: Return all of the data in the given lookup table as a dict. Only works with S3, and you
  should DEFINITELY AVOID USING THIS.
  
  Args:
      - table (LookupTable)
  
  Returns:
      dict
docstr_tok: ["Return","all","of","the","data","in","the","given","lookup","table","as","a","dict",".","Only","works","with","S3",",","and","you","should","DEFINITELY","AVOID","USING","THIS",".","Args",":","-","table","(","LookupTable",")","Returns",":","dict"]
code: def get_all_table_data(table):
      """
      Return all of the data in the given lookup table as a dict. Only works with S3, and you
      should DEFINITELY AVOID USING THIS.
  
      Args:
          - table (LookupTable)
  
      Returns:
          dict
      """
      if table.driver_type != PersistenceDriver.TYPE_S3:
          raise RuntimeError(
              "Cannot use lookup_table helper on non-S3 table."
          )
  
      # Make a single dummy call to force the table to initialize
      table.get("dummy", None)
  
      # Do some black magic tomfoolery
      return table._driver._cache._data
  
imports: from streamalert.shared.lookup_tables.drivers import PersistenceDriver
label_desc: Use image node_id 1 for calling the LookupTablesMagic obj's underlying member method code with example usage: obj.get_all_table_data(table) and returns: table