Documentation

Init.Data.String.Bootstrap

@[extern lean_string_push]
def String.push :
String → Char → String

Adds a character to the end of a string.

The internal implementation uses dynamic arrays and will perform destructive updates if the string is not shared.

Examples:

  • "abc".push 'd' = "abcd"
  • "".push 'a' = "a"
Equations
    Instances For
      @[inline]

      Returns a new string that contains only the character c.

      Because strings are encoded in UTF-8, the resulting string may take multiple bytes.

      Examples:

      Equations
        Instances For
          @[extern lean_string_posof]
          @[extern lean_string_offsetofpos]
          @[extern lean_string_utf8_extract]
          opaque String.Internal.extract :
          String → Pos.Raw → Pos.Raw → String
          @[extern lean_string_length]
          @[extern lean_string_pushn]
          opaque String.Internal.pushn (s : String) (c : Char) (n : Nat) :
          @[extern lean_string_append]
          @[extern lean_string_utf8_next]
          @[extern lean_string_isempty]
          @[extern lean_string_foldl]
          opaque String.Internal.foldl (f : String → Char → String) (init s : String) :
          @[extern lean_string_isprefixof]
          @[extern lean_string_any]
          opaque String.Internal.any (s : String) (p : Char → Bool) :
          @[extern lean_string_contains]
          @[extern lean_string_utf8_get]
          @[extern lean_string_capitalize]
          @[extern lean_string_utf8_at_end]
          @[extern lean_string_nextwhile]
          opaque String.Internal.nextWhile (s : String) (p : Char → Bool) (i : Pos.Raw) :
          @[extern lean_string_trim]
          @[extern lean_string_intercalate]
          @[extern lean_string_front]
          @[extern lean_string_drop]
          @[extern lean_string_dropright]
          @[extern lean_string_get_byte_fast]
          @[extern lean_string_mk, deprecated String.ofList (since := "2025-10-30")]
          def String.mk (data : List Char) :
          Equations
            Instances For
              @[inline, deprecated String.ofList (since := "2025-10-30")]

              Creates a string that contains the characters in a list, in order.

              Examples:

              Equations
                Instances For
                  @[extern lean_substring_tostring]
                  @[extern lean_substring_drop]
                  opaque Substring.Raw.Internal.drop :
                  Raw → Nat → Raw
                  @[extern lean_substring_front]
                  @[extern lean_substring_takewhile]
                  opaque Substring.Raw.Internal.takeWhile :
                  Raw → (Char → Bool) → Raw
                  @[extern lean_substring_extract]
                  @[extern lean_substring_all]
                  opaque Substring.Raw.Internal.all (s : Raw) (p : Char → Bool) :
                  @[extern lean_substring_beq]
                  opaque Substring.Raw.Internal.beq (ss1 ss2 : Raw) :
                  @[extern lean_substring_isempty]
                  @[extern lean_substring_get]
                  @[extern lean_substring_prev]
                  @[extern lean_string_pos_sub]
                  opaque String.Pos.Raw.Internal.sub :
                  Raw → Raw → Raw
                  @[extern lean_string_pos_min]
                  opaque String.Pos.Raw.Internal.min (p₁ pā‚‚ : Raw) :
                  @[inline]

                  Constructs a singleton string that contains only the provided character.

                  Examples:

                  Equations
                    Instances For