def METHOD_NAME(p, token, bp):
  """Prefix operator.
  Low precedence:  return, raise, etc.
    return x+y is return (x+y), not (return x) + y
  High precedence: logical negation, bitwise complement, etc.
    !x && y is (!x) && y, not !(x && y)
  """
  r = p.ParseUntil(bp)
  return CompositeNode(token, [r])