class_docstr: Represents a parameter to a @jit'ed function.
  
  A parameter is just the name plus metadata; a parameter plus a value is a
  KernelArg.
class_docstr_tok: ["Represents","a","parameter","to","a","@","jit'ed","function",".","A","parameter","is","just","the","name","plus","metadata",";","a","parameter","plus","a","value","is","a","KernelArg","."]
code: def is_constexpr(self):
      return "constexpr" in self.annotation
  
imports: from __future__ import annotations, division
  import ast
  import hashlib
  import inspect
  import os
  import textwrap
  from collections import defaultdict, namedtuple
  from functools import cached_property
  from typing import Callable, Generic, Iterable, List, Optional, TypeVar, Union, cast, overload
  from ..runtime.driver import driver
label_desc: Use image node_id 4 for calling the KernelParam obj's underlying member method code with example usage: obj.is_constexpr() and returns: unknown