Expand description
Types that directly reference data managed by Julia.
In this module you’ll find types that represent Julia’s managed types. These are mutable types
like Module
, DataType
, and Array
which are defined by the C API and provide access
to some specific functionality from that API. For example, Module
provides access to the
contents of Julia modules, and Array
access to the contents of Julia arrays.
The most common of these types is Value
, which represents some arbitrary managed data.
Whenever you call a Julia function its arguments must be of this type, and a new one is
returned. All managed data is a valid Value
and can be converted to that type by calling
Managed::as_value
.
One useful guarantee provided by managed types is that they point to existing data which won’t
be freed until its lifetime has expired. If data is returned that isn’t rooted, jlrs returns a
Ref
instead of the managed type. Because the data isn’t rooted it’s not guaranteed to
remain valid while it can be used. For more information about rooting see the documentation of
the memory
module.
Modules
- Managed types for
Array
, create and access n-dimensional Julia arrays from Rust. - A Julia
Ref
used as an argument of accall
ed function. - Managed type for
DataType
, which provides access to type properties. - Managed type for
Function
, the supertype of all Julia functions. - Managed types that are mostly used internally in Julia.
- Managed type for
Module
, which provides access to Julia’s modules and their content. - Managed type for some Rust data.
- Managed type for
JlrsCore.RustResult
. - Managed type for
SimpleVector
. - Managed type for
String
. - Managed type for
Symbol
. Symbols represent identifiers like module and function names. - Managed type for
Task
. - Managed type for
TypeName
. - Managed type for
TypeVar
. - Managed type for
Union
. - Managed type for
UnionAll
, A union of types over all values of a type parameter. - Managed type for arbitrary Julia data.
Structs
- A reference to Julia data that is not guaranteed to be rooted.
Traits
- Trait implemented by all managed types.
- Trait implemented by
Ref
.
Functions
Type Aliases
- The managed type
W<'target, 'data>
assocatiated with the reference typeT<'scope, 'data>
.