class_docstr: For `Csound <https://csound.com>`_ orchestras.
  
  .. versionadded:: 2.1
class_docstr_tok: ["For","`","Csound","<","https",":","\/\/csound.com",">","`","_","orchestras",".","..","versionadded",":",":","2.1"]
code: def name_callback(lexer, match):
      type_annotation_token = Keyword.Type
  
      name = match.group(1)
      if (
          name in OPCODES
          or name in DEPRECATED_OPCODES
          or name in REMOVED_OPCODES
      ):
          yield match.start(), Name.Builtin, name
      elif name in lexer.user_defined_opcodes:
          yield match.start(), Name.Function, name
      else:
          type_annotation_token = Name
          name_match = re.search(r"^(g?[afikSw])(\w+)", name)
          if name_match:
              yield name_match.start(1), Keyword.Type, name_match.group(
                  1
              )
              yield name_match.start(2), Name, name_match.group(2)
          else:
              yield match.start(), Name, name
  
      if match.group(2):
          yield match.start(2), Punctuation, match.group(2)
          yield match.start(3), type_annotation_token, match.group(3)
  
file_path: catboost/contrib/python/Pygments/py3/pygments/lexers/csound.py
imports: import re
  from pygments.lexer import RegexLexer, bygroups, default, include, using, words
  from pygments.token import Comment, Error, Keyword, Name, Number, Operator, Punctuation, String, Text, Whitespace
  from pygments.lexers._csound_builtins import OPCODES, DEPRECATED_OPCODES, REMOVED_OPCODES
  from pygments.lexers.html import HtmlLexer
  from pygments.lexers.python import PythonLexer
  from pygments.lexers.scripting import LuaLexer
label_desc: Use image node_id 2 for calling the CsoundOrchestraLexer obj's underlying member method code with example usage: obj.name_callback(lexer, match) without return types