std/symbol
import std/symbol to use it. Source: src/std/symbol.iyi at v0.18.0.
Symbolstruct, reopened
struct ::Symbol
def <(other : Symbol) : ::Bool
def <=(other : Symbol) : ::Bool
# Compares symbol with other based on string ordering.
def <=>(other : Symbol) : Int32
def >(other : Symbol) : ::Bool
def >=(other : Symbol) : ::Bool
def clone : Symbol
# Body of a double-quoted inspect/named-arg form, escaped the way the
# other library's `String#inspect` escapes it: quotes and backslashes,
# `#{` (which would interpolate), the named controls (`\a \b \e \f \n
# \r \t \v`) and every other ASCII control or DEL as `\u00XX`. Only
# `"`, `\`, `\n`, `\r`, `\t` and NUL were escaped, so `:"a\eb".inspect`
# carried a raw escape byte and NUL read `\0` where the other says
# `\u0000`.
def self.escape_quoted_body(string : String) : String
def inspect(io : IyiIO) : ::Nil
def inspect : String
# True when *string* cannot be written as an unquoted symbol literal.
# Identifiers may end in `?` or `!` (SPEC.md III.1.7 exempts symbol
# literals from the identifier bang ban). Operators in the list below
# are also unquoted.
def self.needs_quotes?(string : String) : ::Bool
def self.needs_quotes_for_named_argument?(string : String) : ::Bool
def self.quote_for_named_argument(io : IyiIO, string : String) : ::Nil
def self.quote_for_named_argument(string : String) : String
def to_s(io : IyiIO) : ::Nil
end