class_docstr: Parses compiler directives and converts them into AST annotations.
code: def visit_Expr(self, node):
      self.state[_LoopScope].statements_visited += 1
      node = self.generic_visit(node)
      if isinstance(node.value, gast.Call):
          call_node = node.value
          static_val = anno.getanno(
              call_node.func, STATIC_VALUE, default=None
          )
          if static_val is not None:
              # Note: directive calls are not output in the generated code, hence
              # the removal from the code by returning None.
  
              if static_val is directives.set_element_type:
                  self._process_symbol_directive(call_node, static_val)
                  return None
              elif static_val is directives.set_loop_options:
                  self._process_statement_directive(
                      call_node, static_val
                  )
                  return None
      return node
  
imports: import inspect
  import gast
  from nvidia.dali._autograph.core import converter
  from nvidia.dali._autograph.lang import directives
  from nvidia.dali._autograph.pyct import anno
label_desc: Use image node_id 7 for calling the DirectivesTransformer obj's underlying member method code with example usage: obj.visit_Expr(node) and returns: node, None, None