Skip to main content

trait

Stringable

The Stringable trait describes a type that can be converted to a String.

Any type that conforms to Stringable or StringableRaising works with the built-in print() and str() functions.

The Stringable trait requires the type to define the __str__() method. For example:

@value
struct Foo(Stringable):
var s: String

fn __str__(self) -> String:
return self.s

Now you can pass an instance of Foo to the str() function to get back a String:

var foo = Foo("test")
print(str(foo) == "test")
True

If the __str__() method might raise an error, use the StringableRaising trait, instead.

Implemented traits

AnyType

Methods

__str__

__str__(self: T) -> String

Get the string representation of the type.

Returns:

The string representation of the type.