Core.Builtins
API встроенных функций
Следующие API встроенных функций считаются нестабильными, но содержат базовые определения того, что определяет возможности и поведение программы Julia. Обычно доступ к ним осуществляется через универсальный API более высокого уровня.
#
Core.memoryrefget — Function
Core.memoryrefget(::GenericMemoryRef, ordering::Symbol, boundscheck::Bool)
Возвращает значение, хранящееся по ссылке MemoryRef, выдавая BoundsError, если объект Memory пуст. См. описание ref[]. Указанное упорядочение памяти должно быть совместимо с параметром isatomic.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
#
Core.memoryrefset! — Function
Core.memoryrefset!(::GenericMemoryRef, value, ordering::Symbol, boundscheck::Bool)
Сохраняет значение по ссылке MemoryRef, выдавая BoundsError, если объект Memory пуст. См. описание ref[] = value. Указанное упорядочение памяти должно быть совместимо с параметром isatomic.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
#
Core.memoryref_isassigned — Function
Core.memoryref_isassigned(::GenericMemoryRef, ordering::Symbol, boundscheck::Bool)
Определяет, хранится ли значение по ссылке MemoryRef, возвращая false, если объект Memory пуст. См. описание isassigned(::Base.RefValue), Core.memoryrefget. Указанное упорядочение памяти должно быть совместимо с параметром isatomic.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
#
Core.memoryrefswap! — Function
Core.memoryrefswap!(::GenericMemoryRef, value, ordering::Symbol, boundscheck::Bool)
Атомарным образом выполняет операции одновременного получения и задания значения MemoryRef.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
См. также описание swapproperty! и Core.memoryrefset!.
#
Core.memoryrefmodify! — Function
Core.memoryrefmodify!(::GenericMemoryRef, op, value, ordering::Symbol, boundscheck::Bool) -> Pair
Атомарным образом выполняет операции получения и задания значения MemoryRef после применения функции op.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
См. также описание modifyproperty! и Core.memoryrefset!.
#
Core.memoryrefreplace! — Function
Core.memoryrefreplace!(::GenericMemoryRef, expected, desired,
success_order::Symbol, fail_order::Symbol=success_order, boundscheck::Bool) -> (; old, success::Bool)
Атомарным образом выполняет операции получения значения MemoryRef и его условного задания.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
См. также описание replaceproperty! и Core.memoryrefset!.
#
Core.memoryrefsetonce! — Function
Core.memoryrefsetonce!(::GenericMemoryRef, value,
success_order::Symbol, fail_order::Symbol=success_order, boundscheck::Bool) -> success::Bool
Атомарным образом выполняет операции присваивания MemoryRef указанного значения, если оно еще не задано.
|
Совместимость: Julia 1.11
Для этой функции требуется версия Julia не ниже 1.11. |
См. также описание setpropertyonce! и Core.memoryrefset!.
#
Core.Intrinsics.atomic_pointerref — Function
Core.Intrinsics.atomic_pointerref(pointer::Ptr{T}, order::Symbol) --> T
|
Совместимость: Julia 1.7
Для этой функции требуется версия Julia не ниже 1.7. |
См. описание unsafe_load.
#
Core.Intrinsics.atomic_pointerset — Function
Core.Intrinsics.atomic_pointerset(pointer::Ptr{T}, new::T, order::Symbol) --> pointer
|
Совместимость: Julia 1.7
Для этой функции требуется версия Julia не ниже 1.7. |
См. описание unsafe_store!.
#
Core.Intrinsics.atomic_pointerswap — Function
Core.Intrinsics.atomic_pointerswap(pointer::Ptr{T}, new::T, order::Symbol) --> old
|
Совместимость: Julia 1.7
Для этой функции требуется версия Julia не ниже 1.7. |
См. описание unsafe_swap!.
#
Core.Intrinsics.atomic_pointermodify — Function
Core.Intrinsics.atomic_pointermodify(pointer::Ptr{T}, function::(old::T,arg::S)->T, arg::S, order::Symbol) --> old
|
Совместимость: Julia 1.7
Для этой функции требуется версия Julia не ниже 1.7. |
См. описание unsafe_modify!.
#
Core.Intrinsics.atomic_pointerreplace — Function
Core.Intrinsics.atomic_pointerreplace(pointer::Ptr{T}, expected::Any, new::T, success_order::Symbol, failure_order::Symbol) --> (old, cmp)
|
Совместимость: Julia 1.7
Для этой функции требуется версия Julia не ниже 1.7. |
См. описание unsafe_replace!.
#
Core.get_binding_type — Function
Core.get_binding_type(module::Module, name::Symbol)
Получает объявленный тип привязки name из модуля module.
|
Совместимость: Julia 1.9
Для этой функции требуется версия Julia не ниже 1.9. |
#
Core.set_binding_type! — Function
Core.set_binding_type!(module::Module, name::Symbol, [type::Type])
Задает объявленный тип привязки name в модуле module как type. Если привязка уже имеет тип, не эквивалентный type, выдает ошибку. Если аргумент type отсутствует, задается тип привязки Any, если он еще не задан, но ошибка не выдается.
|
Совместимость: Julia 1.9
Для этой функции требуется версия Julia не ниже 1.9. |
#
Core.IntrinsicFunction — Type
Core.IntrinsicFunction <: Core.Builtin <: Function
Функция Core.IntrinsicFunction определяет базовые примитивы, определяющие возможности и поведение программы Julia.
#
Core.Intrinsics — Module
Core.Intrinsics
Модуль Core.Intrinsics содержит объекты Core.IntrinsicFunction.