code: def check_names(self, module, prefix="tf_text."):
      self.assertTrue(
          hasattr(module, "_allowed_symbols"),
          "Expected to find _allowed_symbols in %s" % prefix,
      )
  
      actual_symbols = set(
          name for name in module.__dict__ if not name.startswith("_")
      )
      missing_names = set(module._allowed_symbols) - set(actual_symbols)
      extra_names = set(actual_symbols) - set(module._allowed_symbols)
  
      self.assertEqual(
          extra_names,
          set(),
          "Unexpected symbol(s) exported by %s" % prefix,
      )
      self.assertEqual(
          missing_names,
          set(),
          "Missing expected symbol(s) in %s" % prefix,
      )
  
      for name, value in module.__dict__.items():
          if isinstance(
              value, types.ModuleType
          ) and not name.startswith("_"):
              self.check_names(value, prefix + name + ".")
  
file_path: text/tensorflow_text/public_names_test.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import types
  import tensorflow
  import tensorflow_text
label_desc: Use image node_id 1 for calling the PublicNamesTest obj's underlying member method code with example usage: obj.check_names(module, prefix) without return types