|
Blender V5.0
|
#include <cstring>#include <fmt/format.h>#include <optional>#include <CLG_log.h>#include "MEM_guardedalloc.h"#include "DNA_ID.h"#include "DNA_anim_types.h"#include "DNA_camera_types.h"#include "DNA_constraint_types.h"#include "DNA_key_types.h"#include "DNA_modifier_types.h"#include "DNA_object_types.h"#include "BLI_listbase.h"#include "BLI_utildefines.h"#include "BKE_armature.hh"#include "BKE_idprop.hh"#include "BKE_idtype.hh"#include "BKE_lib_override.hh"#include "BKE_library.hh"#include "BKE_main.hh"#include "RNA_access.hh"#include "RNA_enum_types.hh"#include "RNA_path.hh"#include "RNA_prototypes.hh"#include "rna_access_internal.hh"#include "rna_internal.hh"Go to the source code of this file.
Macros | |
| #define | RNA_PATH_BUFFSIZE 8192 |
Variables | |
| static CLG_LogRef | LOG = {"rna.access_compare_override"} |
| #define RNA_PATH_BUFFSIZE 8192 |
Referenced by RNA_struct_override_matches().
|
static |
Workaround for broken overrides, non-matching ID pointers override operations that replace a non-null value are then assumed as 'mistakes', and ignored (not applied).
Definition at line 1452 of file rna_access_compare_override.cc.
References BLI_assert, CLOG_DEBUG, ListBase::first, IDOverrideLibraryPropertyOperation::flag, RNAPropertyOverrideApplyContext::flag, LIBOVERRIDE_OP_FLAG_IDPOINTER_MATCH_REFERENCE, RNAPropertyOverrideApplyContext::liboverride_property, LOG, PropertyRNA::magic, ID::name, IDOverrideLibraryProperty::operations, PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, PROP_POINTER, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNA_MAGIC, RNA_OVERRIDE_APPLY_FLAG_IGNORE_ID_POINTERS, IDOverrideLibraryProperty::rna_path, IDOverrideLibraryProperty::rna_prop_type, rna_property_override_property_real_id_owner(), RNA_property_pointer_type(), RNA_struct_is_ID(), and UNUSED_VARS_NDEBUG.
Referenced by RNA_struct_override_apply().
| bool RNA_property_comparable | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 197 of file rna_access_compare_override.cc.
References PropertyRNA::flag_override, PROPOVERRIDE_NO_COMPARISON, and rna_ensure_property().
| bool RNA_property_copy | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PointerRNA * | fromptr, | ||
| PropertyRNA * | prop, | ||
| int | index ) |
Definition at line 207 of file rna_access_compare_override.cc.
References LIBOVERRIDE_OP_REPLACE, RNAPropertyOverrideApplyContext::liboverride_operation, IDOverrideLibraryPropertyOperation::operation, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, ptr, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNA_property_editable(), rna_property_override_operation_apply(), IDOverrideLibraryPropertyOperation::subitem_local_index, and IDOverrideLibraryPropertyOperation::subitem_reference_index.
Referenced by copy_to_selected_button(), and override_remove_button_exec().
| bool RNA_property_equals | ( | Main * | bmain, |
| PointerRNA * | ptr_a, | ||
| PointerRNA * | ptr_b, | ||
| PropertyRNA * | prop, | ||
| eRNACompareMode | mode ) |
Definition at line 239 of file rna_access_compare_override.cc.
References BLI_assert, ELEM, RNA_EQ_STRICT, RNA_EQ_UNSET_MATCH_ANY, RNA_EQ_UNSET_MATCH_NONE, rna_property_override_diff(), and rna_property_rna_or_id_get().
Referenced by RNA_struct_equals(), and rna_struct_update_when_changed().
| bool RNA_property_overridable_get | ( | const PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 121 of file rna_access_compare_override.cc.
References BONE_COLLECTION_OVERRIDE_LIBRARY_LOCAL, CAM_BGIMG_FLAG_OVERRIDE_LIBRARY_LOCAL, CONSTRAINT_OVERRIDE_LIBRARY_LOCAL, eModifierFlag_OverrideLibrary_Local, bConstraint::flag, CameraBGImage::flag, IDProperty::flag, NlaTrack::flag, PropertyRNA::flag_override, BoneCollection::flags, IDP_FLAG_OVERRIDABLE_LIBRARY, PropertyRNA::magic, mod, NLATRACK_OVERRIDELIBRARY_LOCAL, PROPOVERRIDE_NO_COMPARISON, PROPOVERRIDE_OVERRIDABLE_LIBRARY, ptr, RNA_MAGIC, and RNA_struct_is_a().
Referenced by property_collection_liboverride_editable(), pyrna_struct_is_property_overridable_library(), rna_property_editable_do(), rna_property_override_diff(), RNA_property_override_library_status(), and RNA_struct_override_matches().
| bool RNA_property_overridable_library_set | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop, | ||
| bool | is_overridable ) |
Should only be used for custom properties.
Definition at line 169 of file rna_access_compare_override.cc.
References IDProperty::flag, IDP_FLAG_OVERRIDABLE_LIBRARY, IDP_FLAG_STATIC_TYPE, PropertyRNA::magic, and RNA_MAGIC.
Referenced by pyrna_struct_property_overridable_library_set().
| bool RNA_property_overridden | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 184 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_find(), ID_IS_OVERRIDE_LIBRARY, ID::override_library, ptr, and RNA_path_from_ID_to_property().
|
static |
Definition at line 1413 of file rna_access_compare_override.cc.
References CLOG_DEBUG, RNAPropertyOverrideApplyContext::do_insert, ELEM, LIBOVERRIDE_OP_INSERT_AFTER, LIBOVERRIDE_OP_INSERT_BEFORE, LIBOVERRIDE_OP_NOOP, RNAPropertyOverrideApplyContext::liboverride_operation, RNAPropertyOverrideApplyContext::liboverride_property, LISTBASE_FOREACH, LOG, ID::name, IDOverrideLibraryProperty::operations, PointerRNA::owner_id, RNAPropertyOverrideApplyContext::ptr_src, IDOverrideLibraryProperty::rna_path, rna_property_override_collection_subitem_lookup(), and rna_property_override_operation_apply().
Referenced by RNA_struct_override_apply().
|
static |
Definition at line 1350 of file rna_access_compare_override.cc.
References BLI_assert, CLOG_DEBUG, ELEM, IDOverrideLibrary::flag, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY_REAL, ID_TAG_LIBOVERRIDE_NEED_RESYNC, ID::lib, LIBOVERRIDE_FLAG_NO_HIERARCHY, LIBRARY_TAG_RESYNC_REQUIRED, LOG, ID::name, ID::override_library, IDOverrideLibrary::reference, rna_property_override_property_real_id_owner(), Library::runtime, and ID::tag.
Referenced by RNA_struct_override_apply().
|
static |
Definition at line 1134 of file rna_access_compare_override.cc.
References BLI_assert, CLOG_DEBUG, PointerRNA::data, IDOverrideLibraryPropertyOperation::flag, PointerRNA::invalidate(), LIBOVERRIDE_OP_FLAG_IDPOINTER_ITEM_USE_ID, RNAPropertyOverrideApplyContext::liboverride_operation, RNAPropertyOverrideApplyContext::liboverride_property, LOG, ID::name, PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_item_dst, RNAPropertyOverrideApplyContext::ptr_item_src, RNAPropertyOverrideApplyContext::ptr_item_storage, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, IDOverrideLibraryProperty::rna_path, rna_property_override_collection_subitem_name_index_lookup(), RNA_property_type(), IDOverrideLibraryPropertyOperation::subitem_local_id, IDOverrideLibraryPropertyOperation::subitem_local_index, IDOverrideLibraryPropertyOperation::subitem_local_name, IDOverrideLibraryPropertyOperation::subitem_reference_id, IDOverrideLibraryPropertyOperation::subitem_reference_index, IDOverrideLibraryPropertyOperation::subitem_reference_name, and PointerRNA::type.
Referenced by rna_property_override_apply_ex(), and RNA_struct_override_apply().
|
static |
Definition at line 1031 of file rna_access_compare_override.cc.
References BLI_assert, PointerRNA::data, StructRNA::nameproperty, PROP_COLLECTION, CollectionPropertyIterator::ptr, ptr, RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_lookup_string(), RNA_property_collection_next(), rna_property_override_collection_subitem_name_id_match(), RNA_property_type(), PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by rna_property_override_collection_subitem_name_index_lookup().
|
static |
Definition at line 995 of file rna_access_compare_override.cc.
References BLI_assert, PointerRNA::data, MEM_freeN(), name, StructRNA::nameproperty, RNA_property_string_get_alloc(), RNA_struct_is_ID(), STREQ, PointerRNA::type, and UNLIKELY.
Referenced by rna_property_override_collection_subitem_name_id_lookup(), and rna_property_override_collection_subitem_name_index_lookup().
|
static |
Definition at line 1075 of file rna_access_compare_override.cc.
References PointerRNA::invalidate(), ptr, RNA_property_collection_lookup_int(), rna_property_override_collection_subitem_name_id_lookup(), rna_property_override_collection_subitem_name_id_match(), RNA_property_pointer_type(), RNA_struct_is_ID(), and PointerRNA::type.
Referenced by rna_property_override_collection_subitem_lookup().
|
static |
Generic RNA property diff function.
Return value follows comparison functions convention (0 is equal, -1 if prop_a value is lesser than prop_b one, and 1 otherwise.
Definition at line 304 of file rna_access_compare_override.cc.
References PropertyRNAOrID::array_len, BLI_assert, BLI_assert_unreachable, CLOG_ERROR, RNAPropertyOverrideDiffContext::comparison, ELEM, PropertyRNA::flag_override, PropertyRNAOrID::identifier, PropertyRNAOrID::idprop, PropertyRNAOrID::is_array, PropertyRNAOrID::is_idprop, PropertyRNAOrID::is_set, RNAPropertyOverrideDiffContext::liboverride, RNAPropertyOverrideDiffContext::liboverride_flags, LOG, RNAPropertyOverrideDiffContext::mode, PropertyRNA::override_diff, RNAPropertyOverrideDiffContext::prop_a, RNAPropertyOverrideDiffContext::prop_b, PROP_COLLECTION, PROP_POINTER, PROPOVERRIDE_NO_COMPARISON, PropertyRNAOrID::ptr, PropertyRNAOrID::rawprop, RNAPropertyOverrideDiffContext::report_flag, RNA_EQ_UNSET_MATCH_ANY, RNA_EQ_UNSET_MATCH_NONE, RNA_OVERRIDE_COMPARE_CREATE, RNAPropertyOverrideDiffContext::rna_path, RNAPropertyOverrideDiffContext::rna_path_len, RNA_property_editable_flag(), RNA_property_overridable_get(), rna_property_override_diff_default(), RNA_property_type(), and PropertyRNAOrID::rnaprop.
Referenced by RNA_property_equals(), and RNA_struct_override_matches().
| int RNA_property_override_flag | ( | PropertyRNA * | prop | ) |
Definition at line 116 of file rna_access_compare_override.cc.
References PropertyRNA::flag_override, and rna_ensure_property().
Referenced by RNA_struct_override_matches().
| eRNAOverrideStatus RNA_property_override_library_status | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const int | index ) |
Definition at line 1738 of file rna_access_compare_override.cc.
References IDOverrideLibraryPropertyOperation::flag, ID_IS_OVERRIDE_LIBRARY, LIBOVERRIDE_OP_FLAG_LOCKED, LIBOVERRIDE_OP_FLAG_MANDATORY, ptr, RNA_OVERRIDE_STATUS_LOCKED, RNA_OVERRIDE_STATUS_MANDATORY, RNA_OVERRIDE_STATUS_OVERRIDABLE, RNA_OVERRIDE_STATUS_OVERRIDDEN, RNA_property_editable_flag(), RNA_property_overridable_get(), and RNA_property_override_property_operation_find().
Referenced by override_add_button_poll(), override_remove_button_poll(), ui_but_override_flag(), and ui_popup_context_menu_for_button().
|
static |
Definition at line 518 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_operands_validate(), BLI_assert_unreachable, CLOG_ERROR, ELEM, RNAPropertyOverrideApplyContext::len_dst, RNAPropertyOverrideApplyContext::len_src, RNAPropertyOverrideApplyContext::len_storage, LIBOVERRIDE_OP_NOOP, RNAPropertyOverrideApplyContext::liboverride_operation, LOG, PropertyRNA::magic, IDOverrideLibraryPropertyOperation::operation, PropertyRNA::override_apply, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, RNA_MAGIC, RNA_property_array_length(), and rna_property_override_apply_default().
Referenced by RNA_property_copy(), rna_property_override_apply_ex(), and RNA_struct_override_matches().
|
static |
Definition at line 424 of file rna_access_compare_override.cc.
References BLI_assert_unreachable, CLOG_ERROR, ELEM, LIBOVERRIDE_OP_ADD, LIBOVERRIDE_OP_MULTIPLY, LIBOVERRIDE_OP_SUBTRACT, LISTBASE_FOREACH, LOG, PropertyRNA::magic, IDOverrideLibraryProperty::operations, PropertyRNA::override_store, RNA_MAGIC, IDOverrideLibraryProperty::rna_path, RNA_property_array_length(), and rna_property_override_store_default().
Referenced by RNA_struct_override_store().
| IDOverrideLibraryProperty * RNA_property_override_property_find | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| ID ** | r_owner_id ) |
Definition at line 1659 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_find(), ptr, and rna_property_override_property_real_id_owner().
Referenced by override_remove_button_exec(), and RNA_property_override_property_operation_find().
| IDOverrideLibraryProperty * RNA_property_override_property_get | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| bool * | r_created ) |
Definition at line 1675 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_get(), ID::override_library, ptr, and rna_property_override_property_real_id_owner().
Referenced by RNA_property_override_property_operation_get().
| IDOverrideLibraryPropertyOperation * RNA_property_override_property_operation_find | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const int | index, | ||
| const bool | strict, | ||
| bool * | r_strict ) |
Definition at line 1695 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_find(), ptr, and RNA_property_override_property_find().
Referenced by RNA_property_override_library_status().
| IDOverrideLibraryPropertyOperation * RNA_property_override_property_operation_get | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const short | operation, | ||
| const int | index, | ||
| const bool | strict, | ||
| bool * | r_strict, | ||
| bool * | r_created ) |
Definition at line 1714 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_get(), ptr, and RNA_property_override_property_get().
Referenced by override_add_button_exec().
|
static |
Find the actual ID owner of the given ptr PointerRNA, in override sense, and generate the full rna path from it to given prop PropertyRNA if rna_path is given.
Definition at line 60 of file rna_access_compare_override.cc.
References BLI_assert_unreachable, ID::flag, GS, ID_FLAG_EMBEDDED_DATA, ID_FLAG_EMBEDDED_DATA_LIB_OVERRIDE, ID_GR, ID_KE, ID_NT, ID::name, ptr, RNA_find_real_ID_and_path(), and RNA_path_from_ID_to_property().
Referenced by override_apply_property_check_skip(), rna_property_override_check_resync(), RNA_property_override_property_find(), RNA_property_override_property_get(), and RNA_struct_override_apply().
| bool RNA_struct_equals | ( | Main * | bmain, |
| PointerRNA * | ptr_a, | ||
| PointerRNA * | ptr_b, | ||
| eRNACompareMode | mode ) |
Definition at line 254 of file rna_access_compare_override.cc.
References PointerRNA::data, CollectionPropertyIterator::ptr, RNA_pointer_is_null(), RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_next(), RNA_property_equals(), RNA_struct_iterator_property(), PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by wm_keymap_item_equals_result().
| void RNA_struct_override_apply | ( | Main * | bmain, |
| PointerRNA * | id_ptr_dst, | ||
| PointerRNA * | id_ptr_src, | ||
| PointerRNA * | id_ptr_storage, | ||
| IDOverrideLibrary * | liboverride, | ||
| eRNAOverrideApplyFlag | flag ) |
Apply given override operations on id_ptr_dst, using id_ptr_src (and id_ptr_storage for differential ops) as source.
Definition at line 1518 of file rna_access_compare_override.cc.
References BKE_idtype_get_info_from_id(), BLI_assert, CLOG_DEBUG, PointerRNA::data, RNAPropertyOverrideApplyContext::do_insert, flag, IDOverrideLibraryPropertyOperation::flag, RNAPropertyOverrideApplyContext::flag, i, ID_TAG_LIBOVERRIDE_NEED_RESYNC, IDTypeInfo::lib_override_apply_post, RNAPropertyOverrideApplyContext::liboverride, LIBOVERRIDE_OP_FLAG_IDPOINTER_MATCH_REFERENCE, RNAPropertyOverrideApplyContext::liboverride_operation, LIBOVERRIDE_PROP_TAG_NEEDS_RETORE, RNAPropertyOverrideApplyContext::liboverride_property, LISTBASE_FOREACH, LOG, ID::name, override_apply_property_check_skip(), PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, PROP_POINTER, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, IDOverrideLibrary::properties, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_item_dst, RNAPropertyOverrideApplyContext::ptr_item_src, RNAPropertyOverrideApplyContext::ptr_item_storage, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, RNA_OVERRIDE_APPLY_FLAG_RESTORE_ONLY, RNA_OVERRIDE_APPLY_FLAG_SKIP_RESYNC_CHECK, RNA_path_resolve_property(), RNA_path_resolve_property_and_item_pointer(), rna_property_override_apply_ex(), rna_property_override_check_resync(), rna_property_override_collection_subitem_lookup(), rna_property_override_property_real_id_owner(), RNA_property_pointer_get(), RNA_property_pointer_type(), RNA_struct_is_a(), RNA_struct_is_ID(), RNA_struct_override_apply(), ID::tag, TIMEIT_END_AVERAGED, TIMEIT_START_AVERAGED, and PointerRNA::type.
Referenced by BKE_lib_override_library_operations_restore(), BKE_lib_override_library_update(), lib_override_library_resync(), and RNA_struct_override_apply().
| bool RNA_struct_override_matches | ( | Main * | bmain, |
| PointerRNA * | ptr_local, | ||
| PointerRNA * | ptr_reference, | ||
| const char * | root_path, | ||
| size_t | root_path_len, | ||
| IDOverrideLibrary * | liboverride, | ||
| eRNAOverrideMatch | flags, | ||
| eRNAOverrideMatchResult * | r_report_flags ) |
Check whether reference and local overridden data match (are the same), with respect to given restrictive sets of properties. If requested, will generate needed new property overrides, and/or restore values from reference.
| r_report_flags | If given, will be set with flags matching actions taken by the function on ptr_local. |
Definition at line 599 of file rna_access_compare_override.cc.
References BKE_lib_override_library_operations_tag(), BKE_lib_override_library_property_find(), BKE_lib_override_library_property_get(), BKE_lib_override_library_property_operation_get(), BKE_pose_ensure(), BLI_assert, BLI_assert_msg, BLI_time_now_seconds(), CLOG_DEBUG, Object::data, PointerRNA::data, diff(), ELEM, ListBase::first, float, GS, ID_OB, PropertyRNAOrID::identifier, PropertyRNAOrID::idprop, PropertyRNAOrID::is_idprop, LIBOVERRIDE_OP_NOOP, LIBOVERRIDE_OP_REPLACE, RNAPropertyOverrideApplyContext::liboverride_operation, LIBOVERRIDE_PROP_OP_TAG_UNUSED, LIBOVERRIDE_PROP_TAG_NEEDS_RETORE, LIBOVERRIDE_TAG_NEEDS_RESTORE, LOG, MEM_malloc_arrayN(), ID::name, OB_ARMATURE, IDOverrideLibraryPropertyOperation::operation, IDOverrideLibraryProperty::operations, ID::override_library, PointerRNA::owner_id, printf, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, PROPOVERRIDE_IGNORE, CollectionPropertyIterator::ptr, PropertyRNAOrID::ptr, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, IDOverrideLibrary::reference, RNA_EQ_STRICT, RNA_OVERRIDE_COMPARE_CREATE, RNA_OVERRIDE_COMPARE_IGNORE_NON_OVERRIDABLE, RNA_OVERRIDE_COMPARE_IGNORE_OVERRIDDEN, RNA_OVERRIDE_COMPARE_RESTORE, RNA_OVERRIDE_COMPARE_TAG_FOR_RESTORE, RNA_OVERRIDE_MATCH_RESULT_CREATED, RNA_OVERRIDE_MATCH_RESULT_RESTORE_TAGGED, RNA_OVERRIDE_MATCH_RESULT_RESTORED, RNA_PATH_BUFFSIZE, RNA_path_from_ID_to_property(), RNA_property_animated(), RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_next(), RNA_property_editable(), RNA_property_overridable_get(), rna_property_override_diff(), RNA_property_override_flag(), rna_property_override_operation_apply(), rna_property_rna_or_id_get(), RNA_struct_iterator_property(), PropertyRNAOrID::rnaprop, IDOverrideLibrary::runtime, IDOverrideLibraryPropertyOperation::subitem_local_index, IDOverrideLibraryPropertyOperation::subitem_reference_index, IDOverrideLibraryProperty::tag, IDOverrideLibraryPropertyOperation::tag, IDOverrideLibraryRuntime::tag, Object::type, PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by BKE_lib_override_library_status_check_local(), BKE_lib_override_library_status_check_reference(), and lib_override_library_operations_create().
| bool RNA_struct_override_store | ( | Main * | bmain, |
| PointerRNA * | ptr_local, | ||
| PointerRNA * | ptr_reference, | ||
| PointerRNA * | ptr_storage, | ||
| IDOverrideLibrary * | liboverride ) |
Store needed second operands into storage data-block for differential override operations.
Definition at line 947 of file rna_access_compare_override.cc.
References LISTBASE_FOREACH, PointerRNA::owner_id, IDOverrideLibrary::properties, RNA_path_resolve_property(), rna_property_override_operation_store(), RNA_struct_override_store(), TIMEIT_END_AVERAGED, and TIMEIT_START_AVERAGED.
Referenced by RNA_struct_override_store().
|
static |
Definition at line 50 of file rna_access_compare_override.cc.