Core.Builtins
Builtin Function APIs
Die folgenden Builtin-Funktions-APIs gelten als instabil, bieten jedoch die grundlegenden Definitionen dafür, was die Fähigkeiten und Verhaltensweisen eines Julia-Programms definiert. Sie werden typischerweise über eine höherstufige generische API aufgerufen.
Core.memoryrefnew
— FunctionCore.memoryrefnew(::GenericMemory)
Core.memoryrefnew(::GenericMemoryRef, index::Int, [boundscheck::Bool])
Gibt einen GenericMemoryRef
für einen GenericMemory
zurück. Siehe memoryref
.
Diese Funktion erfordert Julia 1.11 oder höher.
Core.memoryrefoffset
— FunctionCore..memoryrefoffset(::GenericMemoryRef)
Gibt den Offset-Index zurück, der verwendet wurde, um die MemoryRef
zu erstellen. Siehe memoryref
.
Diese Funktion erfordert Julia 1.11 oder höher.
Core.memoryrefget
— FunctionCore.memoryrefget(::GenericMemoryRef, ordering::Symbol, boundscheck::Bool)
Gibt den Wert zurück, der im MemoryRef
gespeichert ist, und wirft einen BoundsError
, wenn der Memory
leer ist. Siehe ref[]
. Die angegebene Speicheranordnung muss mit dem isatomic
-Parameter kompatibel sein.
Diese Funktion erfordert Julia 1.11 oder höher.
Core.memoryrefset!
— FunctionCore.memoryrefset!(::GenericMemoryRef, value, ordering::Symbol, boundscheck::Bool)
Speichert den Wert im MemoryRef
und wirft einen BoundsError
, wenn der Memory
leer ist. Siehe ref[] = value
. Die angegebene Speicheranordnung muss mit dem Parameter isatomic
kompatibel sein.
Diese Funktion erfordert Julia 1.11 oder höher.
Core.memoryref_isassigned
— FunctionCore.memoryref_isassigned(::GenericMemoryRef, ordering::Symbol, boundscheck::Bool)
Gibt zurück, ob ein Wert im MemoryRef
gespeichert ist, wobei false zurückgegeben wird, wenn der Memory
leer ist. Siehe isassigned(::Base.RefValue)
, Core.memoryrefget
. Die angegebene Speicheranordnung muss mit dem isatomic
-Parameter kompatibel sein.
Diese Funktion erfordert Julia 1.11 oder höher.
Core.memoryrefswap!
— FunctionCore.memoryrefswap!(::GenericMemoryRef, value, ordering::Symbol, boundscheck::Bool)
Führen Sie atomar die Operationen aus, um gleichzeitig einen MemoryRef
-Wert zu erhalten und zu setzen.
Diese Funktion erfordert Julia 1.11 oder höher.
Siehe auch swapproperty!
und Core.memoryrefset!
.
Core.memoryrefmodify!
— FunctionCore.memoryrefmodify!(::GenericMemoryRef, op, value, ordering::Symbol, boundscheck::Bool) -> Pair
Führen Sie atomar die Operationen aus, um einen MemoryRef
-Wert zu erhalten und zu setzen, nachdem die Funktion op
angewendet wurde.
Diese Funktion erfordert Julia 1.11 oder höher.
Siehe auch modifyproperty!
und Core.memoryrefset!
.
Core.memoryrefreplace!
— FunctionCore.memoryrefreplace!(::GenericMemoryRef, expected, desired,
success_order::Symbol, fail_order::Symbol=success_order, boundscheck::Bool) -> (; old, success::Bool)
Führen Sie atomar die Operationen aus, um einen MemoryRef
-Wert zu erhalten und bedingt zu setzen.
Diese Funktion erfordert Julia 1.11 oder höher.
Siehe auch replaceproperty!
und Core.memoryrefset!
.
Core.memoryrefsetonce!
— FunctionCore.memoryrefsetonce!(::GenericMemoryRef, value,
success_order::Symbol, fail_order::Symbol=success_order, boundscheck::Bool) -> success::Bool
Führen Sie atomar die Operationen aus, um einen MemoryRef
auf einen bestimmten Wert zu setzen, nur wenn er zuvor nicht gesetzt war.
Diese Funktion erfordert Julia 1.11 oder höher.
Siehe auch setpropertyonce!
und Core.memoryrefset!
.
Core.Intrinsics.atomic_pointerref
— FunctionCore.Intrinsics.atomic_pointerref(pointer::Ptr{T}, order::Symbol) --> T
Diese Funktion erfordert Julia 1.7 oder höher.
Siehe unsafe_load
.
Core.Intrinsics.atomic_pointerset
— FunctionCore.Intrinsics.atomic_pointerset(pointer::Ptr{T}, new::T, order::Symbol) --> pointer
Diese Funktion erfordert Julia 1.7 oder später.
Siehe unsafe_store!
.
Core.Intrinsics.atomic_pointerswap
— FunctionCore.Intrinsics.atomic_pointerswap(pointer::Ptr{T}, new::T, order::Symbol) --> old
Diese Funktion erfordert Julia 1.7 oder höher.
Siehe unsafe_swap!
.
Core.Intrinsics.atomic_pointermodify
— FunctionCore.Intrinsics.atomic_pointermodify(pointer::Ptr{T}, function::(old::T,arg::S)->T, arg::S, order::Symbol) --> old
Diese Funktion erfordert Julia 1.7 oder später.
Siehe unsafe_modify!
.
Core.Intrinsics.atomic_pointerreplace
— FunctionCore.Intrinsics.atomic_pointerreplace(pointer::Ptr{T}, expected::Any, new::T, success_order::Symbol, failure_order::Symbol) --> (old, cmp)
Diese Funktion erfordert Julia 1.7 oder höher.
Siehe unsafe_replace!
.
Core.get_binding_type
— FunctionCore.get_binding_type(module::Module, name::Symbol)
Rufen Sie den deklarierten Typ der Bindung name
aus dem Modul module
ab.
Diese Funktion erfordert Julia 1.9 oder höher.
Core.set_binding_type!
— FunctionCore.set_binding_type!(module::Module, name::Symbol, [type::Type])
Setze den deklarierten Typ der Bindung name
im Modul module
auf type
. Fehler, wenn die Bindung bereits einen Typ hat, der nicht äquivalent zu type
ist. Wenn das Argument type
fehlt, setze den Bindungstyp auf Any
, wenn er nicht gesetzt ist, aber erzeuge keinen Fehler.
Diese Funktion erfordert Julia 1.9 oder später.
Core.IntrinsicFunction
— TypeCore.IntrinsicFunction <: Core.Builtin <: Function
Die Core.IntrinsicFunction
Funktion definiert einige grundlegende Primitiven für das, was die Fähigkeiten und Verhaltensweisen eines Julia-Programms definiert.
Core.Intrinsics
— ModuleCore.Intrinsics
Das Core.Intrinsics
-Modul enthält die Core.IntrinsicFunction
-Objekte.
Core.IR
— ModuleCore.IR
Das Core.IR
-Modul exportiert das IR-Objektmodell.