Replace NULL with nullptr
This commit is contained in:
parent
5f11e15571
commit
95a1400a2a
|
@ -67,7 +67,7 @@ void Array::_unref() const {
|
|||
if (_p->refcount.unref()) {
|
||||
memdelete(_p);
|
||||
}
|
||||
_p = NULL;
|
||||
_p = nullptr;
|
||||
}
|
||||
|
||||
Variant &Array::operator[](int p_idx) {
|
||||
|
@ -467,7 +467,7 @@ const void *Array::id() const {
|
|||
|
||||
Array::Array(const Array &p_from) {
|
||||
|
||||
_p = NULL;
|
||||
_p = nullptr;
|
||||
_ref(p_from);
|
||||
}
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@ static const unsigned int MONTH_DAYS_TABLE[2][12] = {
|
|||
{ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
|
||||
};
|
||||
|
||||
_ResourceLoader *_ResourceLoader::singleton = NULL;
|
||||
_ResourceLoader *_ResourceLoader::singleton = nullptr;
|
||||
|
||||
Error _ResourceLoader::load_threaded_request(const String &p_path, const String &p_type_hint, bool p_use_sub_threads) {
|
||||
|
||||
|
@ -173,7 +173,7 @@ Vector<String> _ResourceSaver::get_recognized_extensions(const RES &p_resource)
|
|||
return ret;
|
||||
}
|
||||
|
||||
_ResourceSaver *_ResourceSaver::singleton = NULL;
|
||||
_ResourceSaver *_ResourceSaver::singleton = nullptr;
|
||||
|
||||
void _ResourceSaver::_bind_methods() {
|
||||
|
||||
|
@ -778,7 +778,7 @@ Vector<String> _OS::get_granted_permissions() const {
|
|||
String _OS::get_unique_id() const {
|
||||
return OS::get_singleton()->get_unique_id();
|
||||
}
|
||||
_OS *_OS::singleton = NULL;
|
||||
_OS *_OS::singleton = nullptr;
|
||||
|
||||
void _OS::_bind_methods() {
|
||||
|
||||
|
@ -916,7 +916,7 @@ _OS::_OS() {
|
|||
|
||||
///////////////////// GEOMETRY
|
||||
|
||||
_Geometry *_Geometry::singleton = NULL;
|
||||
_Geometry *_Geometry::singleton = nullptr;
|
||||
|
||||
_Geometry *_Geometry::get_singleton() {
|
||||
|
||||
|
@ -1363,11 +1363,11 @@ void _File::close() {
|
|||
|
||||
if (f)
|
||||
memdelete(f);
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
}
|
||||
bool _File::is_open() const {
|
||||
|
||||
return f != NULL;
|
||||
return f != nullptr;
|
||||
}
|
||||
String _File::get_path() const {
|
||||
|
||||
|
@ -1630,7 +1630,7 @@ void _File::store_var(const Variant &p_var, bool p_full_objects) {
|
|||
|
||||
ERR_FAIL_COND_MSG(!f, "File must be opened before use.");
|
||||
int len;
|
||||
Error err = encode_variant(p_var, NULL, len, p_full_objects);
|
||||
Error err = encode_variant(p_var, nullptr, len, p_full_objects);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Error when trying to encode Variant.");
|
||||
|
||||
Vector<uint8_t> buff;
|
||||
|
@ -1654,7 +1654,7 @@ Variant _File::get_var(bool p_allow_objects) const {
|
|||
const uint8_t *r = buff.ptr();
|
||||
|
||||
Variant v;
|
||||
Error err = decode_variant(v, &r[0], len, NULL, p_allow_objects);
|
||||
Error err = decode_variant(v, &r[0], len, nullptr, p_allow_objects);
|
||||
ERR_FAIL_COND_V_MSG(err != OK, Variant(), "Error when trying to encode Variant.");
|
||||
|
||||
return v;
|
||||
|
@ -1733,7 +1733,7 @@ void _File::_bind_methods() {
|
|||
|
||||
_File::_File() {
|
||||
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
eswap = false;
|
||||
}
|
||||
|
||||
|
@ -1934,7 +1934,7 @@ _Directory::~_Directory() {
|
|||
memdelete(d);
|
||||
}
|
||||
|
||||
_Marshalls *_Marshalls::singleton = NULL;
|
||||
_Marshalls *_Marshalls::singleton = nullptr;
|
||||
|
||||
_Marshalls *_Marshalls::get_singleton() {
|
||||
return singleton;
|
||||
|
@ -1943,7 +1943,7 @@ _Marshalls *_Marshalls::get_singleton() {
|
|||
String _Marshalls::variant_to_base64(const Variant &p_var, bool p_full_objects) {
|
||||
|
||||
int len;
|
||||
Error err = encode_variant(p_var, NULL, len, p_full_objects);
|
||||
Error err = encode_variant(p_var, nullptr, len, p_full_objects);
|
||||
ERR_FAIL_COND_V_MSG(err != OK, "", "Error when trying to encode Variant.");
|
||||
|
||||
Vector<uint8_t> buff;
|
||||
|
@ -1972,7 +1972,7 @@ Variant _Marshalls::base64_to_variant(const String &p_str, bool p_allow_objects)
|
|||
ERR_FAIL_COND_V(CryptoCore::b64_decode(&w[0], buf.size(), &len, (unsigned char *)cstr.get_data(), strlen) != OK, Variant());
|
||||
|
||||
Variant v;
|
||||
Error err = decode_variant(v, &w[0], len, NULL, p_allow_objects);
|
||||
Error err = decode_variant(v, &w[0], len, nullptr, p_allow_objects);
|
||||
ERR_FAIL_COND_V_MSG(err != OK, Variant(), "Error when trying to decode Variant.");
|
||||
|
||||
return v;
|
||||
|
@ -2151,7 +2151,7 @@ Error _Thread::start(Object *p_instance, const StringName &p_method, const Varia
|
|||
if (!thread) {
|
||||
active = false;
|
||||
target_method = StringName();
|
||||
target_instance = NULL;
|
||||
target_instance = nullptr;
|
||||
userdata = Variant();
|
||||
return ERR_CANT_CREATE;
|
||||
}
|
||||
|
@ -2179,11 +2179,11 @@ Variant _Thread::wait_to_finish() {
|
|||
Variant r = ret;
|
||||
active = false;
|
||||
target_method = StringName();
|
||||
target_instance = NULL;
|
||||
target_instance = nullptr;
|
||||
userdata = Variant();
|
||||
if (thread)
|
||||
memdelete(thread);
|
||||
thread = NULL;
|
||||
thread = nullptr;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
@ -2202,8 +2202,8 @@ void _Thread::_bind_methods() {
|
|||
_Thread::_Thread() {
|
||||
|
||||
active = false;
|
||||
thread = NULL;
|
||||
target_instance = NULL;
|
||||
thread = nullptr;
|
||||
target_instance = nullptr;
|
||||
}
|
||||
|
||||
_Thread::~_Thread() {
|
||||
|
@ -2581,7 +2581,7 @@ void _Engine::_bind_methods() {
|
|||
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "physics_jitter_fix"), "set_physics_jitter_fix", "get_physics_jitter_fix");
|
||||
}
|
||||
|
||||
_Engine *_Engine::singleton = NULL;
|
||||
_Engine *_Engine::singleton = nullptr;
|
||||
|
||||
_Engine::_Engine() {
|
||||
singleton = this;
|
||||
|
@ -2657,7 +2657,7 @@ Ref<JSONParseResult> _JSON::parse(const String &p_json) {
|
|||
return result;
|
||||
}
|
||||
|
||||
_JSON *_JSON::singleton = NULL;
|
||||
_JSON *_JSON::singleton = nullptr;
|
||||
|
||||
_JSON::_JSON() {
|
||||
singleton = this;
|
||||
|
|
|
@ -502,7 +502,7 @@ public:
|
|||
String base64_to_utf8(const String &p_str);
|
||||
|
||||
_Marshalls() { singleton = this; }
|
||||
~_Marshalls() { singleton = NULL; }
|
||||
~_Marshalls() { singleton = nullptr; }
|
||||
};
|
||||
|
||||
class _Mutex : public Reference {
|
||||
|
|
|
@ -79,7 +79,7 @@ StringName Callable::get_method() const {
|
|||
}
|
||||
|
||||
CallableCustom *Callable::get_custom() const {
|
||||
ERR_FAIL_COND_V_MSG(!is_custom(), NULL,
|
||||
ERR_FAIL_COND_V_MSG(!is_custom(), nullptr,
|
||||
vformat("Can't get custom on non-CallableCustom \"%s\".", operator String()));
|
||||
return custom;
|
||||
}
|
||||
|
|
|
@ -262,8 +262,8 @@ ClassDB::ClassInfo::ClassInfo() {
|
|||
|
||||
api = API_NONE;
|
||||
class_ptr = nullptr;
|
||||
creation_func = NULL;
|
||||
inherits_ptr = NULL;
|
||||
creation_func = nullptr;
|
||||
inherits_ptr = nullptr;
|
||||
disabled = false;
|
||||
exposed = false;
|
||||
}
|
||||
|
@ -290,7 +290,7 @@ void ClassDB::get_class_list(List<StringName> *p_classes) {
|
|||
|
||||
OBJTYPE_RLOCK;
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
|
||||
while ((k = classes.next(k))) {
|
||||
|
||||
|
@ -304,7 +304,7 @@ void ClassDB::get_inheriters_from_class(const StringName &p_class, List<StringNa
|
|||
|
||||
OBJTYPE_RLOCK;
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
|
||||
while ((k = classes.next(k))) {
|
||||
|
||||
|
@ -317,7 +317,7 @@ void ClassDB::get_direct_inheriters_from_class(const StringName &p_class, List<S
|
|||
|
||||
OBJTYPE_RLOCK;
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
|
||||
while ((k = classes.next(k))) {
|
||||
|
||||
|
@ -377,7 +377,7 @@ uint64_t ClassDB::get_api_hash(APIType p_api) {
|
|||
|
||||
List<StringName> names;
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
|
||||
while ((k = classes.next(k))) {
|
||||
|
||||
|
@ -399,7 +399,7 @@ uint64_t ClassDB::get_api_hash(APIType p_api) {
|
|||
|
||||
List<StringName> snames;
|
||||
|
||||
k = NULL;
|
||||
k = nullptr;
|
||||
|
||||
while ((k = t->method_map.next(k))) {
|
||||
|
||||
|
@ -446,7 +446,7 @@ uint64_t ClassDB::get_api_hash(APIType p_api) {
|
|||
|
||||
List<StringName> snames;
|
||||
|
||||
k = NULL;
|
||||
k = nullptr;
|
||||
|
||||
while ((k = t->constant_map.next(k))) {
|
||||
|
||||
|
@ -466,7 +466,7 @@ uint64_t ClassDB::get_api_hash(APIType p_api) {
|
|||
|
||||
List<StringName> snames;
|
||||
|
||||
k = NULL;
|
||||
k = nullptr;
|
||||
|
||||
while ((k = t->signal_map.next(k))) {
|
||||
|
||||
|
@ -489,7 +489,7 @@ uint64_t ClassDB::get_api_hash(APIType p_api) {
|
|||
|
||||
List<StringName> snames;
|
||||
|
||||
k = NULL;
|
||||
k = nullptr;
|
||||
|
||||
while ((k = t->property_setget.next(k))) {
|
||||
|
||||
|
@ -549,14 +549,14 @@ Object *ClassDB::instance(const StringName &p_class) {
|
|||
ti = classes.getptr(compat_classes[p_class]);
|
||||
}
|
||||
}
|
||||
ERR_FAIL_COND_V_MSG(!ti, NULL, "Cannot get class '" + String(p_class) + "'.");
|
||||
ERR_FAIL_COND_V_MSG(ti->disabled, NULL, "Class '" + String(p_class) + "' is disabled.");
|
||||
ERR_FAIL_COND_V(!ti->creation_func, NULL);
|
||||
ERR_FAIL_COND_V_MSG(!ti, nullptr, "Cannot get class '" + String(p_class) + "'.");
|
||||
ERR_FAIL_COND_V_MSG(ti->disabled, nullptr, "Class '" + String(p_class) + "' is disabled.");
|
||||
ERR_FAIL_COND_V(!ti->creation_func, nullptr);
|
||||
}
|
||||
#ifdef TOOLS_ENABLED
|
||||
if (ti->api == API_EDITOR && !Engine::get_singleton()->is_editor_hint()) {
|
||||
ERR_PRINT("Class '" + String(p_class) + "' can only be instantiated by editor.");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
#endif
|
||||
return ti->creation_func();
|
||||
|
@ -572,7 +572,7 @@ bool ClassDB::can_instance(const StringName &p_class) {
|
|||
return false;
|
||||
}
|
||||
#endif
|
||||
return (!ti->disabled && ti->creation_func != NULL);
|
||||
return (!ti->disabled && ti->creation_func != nullptr);
|
||||
}
|
||||
|
||||
void ClassDB::_add_class2(const StringName &p_class, const StringName &p_inherits) {
|
||||
|
@ -595,7 +595,7 @@ void ClassDB::_add_class2(const StringName &p_class, const StringName &p_inherit
|
|||
ti.inherits_ptr = &classes[ti.inherits];
|
||||
|
||||
} else {
|
||||
ti.inherits_ptr = NULL;
|
||||
ti.inherits_ptr = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -653,7 +653,7 @@ void ClassDB::get_method_list(StringName p_class, List<MethodInfo> *p_methods, b
|
|||
|
||||
#else
|
||||
|
||||
const StringName *K = NULL;
|
||||
const StringName *K = nullptr;
|
||||
|
||||
while ((K = type->method_map.next(K))) {
|
||||
|
||||
|
@ -685,7 +685,7 @@ MethodBind *ClassDB::get_method(StringName p_class, StringName p_name) {
|
|||
return *method;
|
||||
type = type->inherits_ptr;
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void ClassDB::bind_integer_constant(const StringName &p_class, const StringName &p_enum, const StringName &p_name, int p_constant) {
|
||||
|
@ -737,7 +737,7 @@ void ClassDB::get_integer_constant_list(const StringName &p_class, List<String>
|
|||
for (List<StringName>::Element *E = type->constant_order.front(); E; E = E->next())
|
||||
p_constants->push_back(E->get());
|
||||
#else
|
||||
const StringName *K = NULL;
|
||||
const StringName *K = nullptr;
|
||||
|
||||
while ((K = type->constant_map.next(K))) {
|
||||
p_constants->push_back(*K);
|
||||
|
@ -784,7 +784,7 @@ StringName ClassDB::get_integer_constant_enum(const StringName &p_class, const S
|
|||
|
||||
while (type) {
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
while ((k = type->enum_map.next(k))) {
|
||||
|
||||
List<StringName> &constants_list = type->enum_map.get(*k);
|
||||
|
@ -810,7 +810,7 @@ void ClassDB::get_enum_list(const StringName &p_class, List<StringName> *p_enums
|
|||
|
||||
while (type) {
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
while ((k = type->enum_map.next(k))) {
|
||||
p_enums->push_back(*k);
|
||||
}
|
||||
|
@ -876,7 +876,7 @@ void ClassDB::get_signal_list(StringName p_class, List<MethodInfo> *p_signals, b
|
|||
|
||||
while (check) {
|
||||
|
||||
const StringName *S = NULL;
|
||||
const StringName *S = nullptr;
|
||||
while ((S = check->signal_map.next(S))) {
|
||||
|
||||
p_signals->push_back(check->signal_map[*S]);
|
||||
|
@ -938,7 +938,7 @@ void ClassDB::add_property(StringName p_class, const PropertyInfo &p_pinfo, cons
|
|||
|
||||
ERR_FAIL_COND(!type);
|
||||
|
||||
MethodBind *mb_set = NULL;
|
||||
MethodBind *mb_set = nullptr;
|
||||
if (p_setter) {
|
||||
mb_set = get_method(p_class, p_setter);
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
|
@ -950,7 +950,7 @@ void ClassDB::add_property(StringName p_class, const PropertyInfo &p_pinfo, cons
|
|||
#endif
|
||||
}
|
||||
|
||||
MethodBind *mb_get = NULL;
|
||||
MethodBind *mb_get = nullptr;
|
||||
if (p_getter) {
|
||||
|
||||
mb_get = get_method(p_class, p_getter);
|
||||
|
@ -1087,9 +1087,9 @@ bool ClassDB::get_property(Object *p_object, const StringName &p_property, Varia
|
|||
Callable::CallError ce;
|
||||
if (psg->_getptr) {
|
||||
|
||||
r_value = psg->_getptr->call(p_object, NULL, 0, ce);
|
||||
r_value = psg->_getptr->call(p_object, nullptr, 0, ce);
|
||||
} else {
|
||||
r_value = p_object->call(psg->getter, NULL, 0, ce);
|
||||
r_value = p_object->call(psg->getter, nullptr, 0, ce);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
@ -1246,33 +1246,33 @@ MethodBind *ClassDB::bind_methodfi(uint32_t p_flags, MethodBind *p_bind, const c
|
|||
#endif
|
||||
|
||||
OBJTYPE_WLOCK;
|
||||
ERR_FAIL_COND_V(!p_bind, NULL);
|
||||
ERR_FAIL_COND_V(!p_bind, nullptr);
|
||||
p_bind->set_name(mdname);
|
||||
|
||||
String instance_type = p_bind->get_instance_class();
|
||||
|
||||
#ifdef DEBUG_ENABLED
|
||||
|
||||
ERR_FAIL_COND_V_MSG(has_method(instance_type, mdname), NULL, "Class " + String(instance_type) + " already has a method " + String(mdname) + ".");
|
||||
ERR_FAIL_COND_V_MSG(has_method(instance_type, mdname), nullptr, "Class " + String(instance_type) + " already has a method " + String(mdname) + ".");
|
||||
#endif
|
||||
|
||||
ClassInfo *type = classes.getptr(instance_type);
|
||||
if (!type) {
|
||||
memdelete(p_bind);
|
||||
ERR_FAIL_V_MSG(NULL, "Couldn't bind method '" + mdname + "' for instance '" + instance_type + "'.");
|
||||
ERR_FAIL_V_MSG(nullptr, "Couldn't bind method '" + mdname + "' for instance '" + instance_type + "'.");
|
||||
}
|
||||
|
||||
if (type->method_map.has(mdname)) {
|
||||
memdelete(p_bind);
|
||||
// overloading not supported
|
||||
ERR_FAIL_V_MSG(NULL, "Method already bound '" + instance_type + "::" + mdname + "'.");
|
||||
ERR_FAIL_V_MSG(nullptr, "Method already bound '" + instance_type + "::" + mdname + "'.");
|
||||
}
|
||||
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
|
||||
if (method_name.args.size() > p_bind->get_argument_count()) {
|
||||
memdelete(p_bind);
|
||||
ERR_FAIL_V_MSG(NULL, "Method definition provides more arguments than the method actually has '" + instance_type + "::" + mdname + "'.");
|
||||
ERR_FAIL_V_MSG(nullptr, "Method definition provides more arguments than the method actually has '" + instance_type + "::" + mdname + "'.");
|
||||
}
|
||||
|
||||
p_bind->set_argument_names(method_name.args);
|
||||
|
@ -1383,7 +1383,7 @@ void ClassDB::add_resource_base_extension(const StringName &p_extension, const S
|
|||
|
||||
void ClassDB::get_resource_base_extensions(List<String> *p_extensions) {
|
||||
|
||||
const StringName *K = NULL;
|
||||
const StringName *K = nullptr;
|
||||
|
||||
while ((K = resource_base_extensions.next(K))) {
|
||||
|
||||
|
@ -1393,7 +1393,7 @@ void ClassDB::get_resource_base_extensions(List<String> *p_extensions) {
|
|||
|
||||
void ClassDB::get_extensions_for_type(const StringName &p_class, List<String> *p_extensions) {
|
||||
|
||||
const StringName *K = NULL;
|
||||
const StringName *K = nullptr;
|
||||
|
||||
while ((K = resource_base_extensions.next(K))) {
|
||||
StringName cmp = resource_base_extensions[*K];
|
||||
|
@ -1413,7 +1413,7 @@ Variant ClassDB::class_get_default_property_value(const StringName &p_class, con
|
|||
default_values[p_class] = HashMap<StringName, Variant>();
|
||||
}
|
||||
|
||||
Object *c = NULL;
|
||||
Object *c = nullptr;
|
||||
bool cleanup_c = false;
|
||||
|
||||
if (Engine::get_singleton()->has_singleton(p_class)) {
|
||||
|
@ -1447,20 +1447,20 @@ Variant ClassDB::class_get_default_property_value(const StringName &p_class, con
|
|||
}
|
||||
|
||||
if (!default_values.has(p_class)) {
|
||||
if (r_valid != NULL) *r_valid = false;
|
||||
if (r_valid != nullptr) *r_valid = false;
|
||||
return Variant();
|
||||
}
|
||||
|
||||
if (!default_values[p_class].has(p_property)) {
|
||||
if (r_valid != NULL) *r_valid = false;
|
||||
if (r_valid != nullptr) *r_valid = false;
|
||||
return Variant();
|
||||
}
|
||||
|
||||
if (r_valid != NULL) *r_valid = true;
|
||||
if (r_valid != nullptr) *r_valid = true;
|
||||
return default_values[p_class][p_property];
|
||||
}
|
||||
|
||||
RWLock *ClassDB::lock = NULL;
|
||||
RWLock *ClassDB::lock = nullptr;
|
||||
|
||||
void ClassDB::init() {
|
||||
|
||||
|
@ -1477,13 +1477,13 @@ void ClassDB::cleanup() {
|
|||
|
||||
//OBJTYPE_LOCK; hah not here
|
||||
|
||||
const StringName *k = NULL;
|
||||
const StringName *k = nullptr;
|
||||
|
||||
while ((k = classes.next(k))) {
|
||||
|
||||
ClassInfo &ti = classes[*k];
|
||||
|
||||
const StringName *m = NULL;
|
||||
const StringName *m = nullptr;
|
||||
while ((m = ti.method_map.next(m))) {
|
||||
|
||||
memdelete(ti.method_map[*m]);
|
||||
|
|
|
@ -234,7 +234,7 @@ public:
|
|||
|
||||
MethodBind *bind = create_method_bind(p_method);
|
||||
|
||||
return bind_methodfi(METHOD_FLAGS_DEFAULT, bind, p_method_name, NULL, 0); //use static function, much smaller binary usage
|
||||
return bind_methodfi(METHOD_FLAGS_DEFAULT, bind, p_method_name, nullptr, 0); //use static function, much smaller binary usage
|
||||
}
|
||||
|
||||
template <class N, class M>
|
||||
|
@ -315,7 +315,7 @@ public:
|
|||
GLOBAL_LOCK_FUNCTION;
|
||||
|
||||
MethodBind *bind = create_vararg_method_bind(p_method, p_info, p_return_nil_is_variant);
|
||||
ERR_FAIL_COND_V(!bind, NULL);
|
||||
ERR_FAIL_COND_V(!bind, nullptr);
|
||||
|
||||
bind->set_name(p_name);
|
||||
bind->set_default_arguments(p_default_args);
|
||||
|
@ -325,13 +325,13 @@ public:
|
|||
ClassInfo *type = classes.getptr(instance_type);
|
||||
if (!type) {
|
||||
memdelete(bind);
|
||||
ERR_FAIL_COND_V(!type, NULL);
|
||||
ERR_FAIL_COND_V(!type, nullptr);
|
||||
}
|
||||
|
||||
if (type->method_map.has(p_name)) {
|
||||
memdelete(bind);
|
||||
// overloading not supported
|
||||
ERR_FAIL_V_MSG(NULL, "Method already bound: " + instance_type + "::" + p_name + ".");
|
||||
ERR_FAIL_V_MSG(nullptr, "Method already bound: " + instance_type + "::" + p_name + ".");
|
||||
}
|
||||
type->method_map[p_name] = bind;
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
|
@ -351,12 +351,12 @@ public:
|
|||
static void add_property_group(StringName p_class, const String &p_name, const String &p_prefix = "");
|
||||
static void add_property(StringName p_class, const PropertyInfo &p_pinfo, const StringName &p_setter, const StringName &p_getter, int p_index = -1);
|
||||
static void set_property_default_value(StringName p_class, const StringName &p_name, const Variant &p_default);
|
||||
static void get_property_list(StringName p_class, List<PropertyInfo> *p_list, bool p_no_inheritance = false, const Object *p_validator = NULL);
|
||||
static bool set_property(Object *p_object, const StringName &p_property, const Variant &p_value, bool *r_valid = NULL);
|
||||
static void get_property_list(StringName p_class, List<PropertyInfo> *p_list, bool p_no_inheritance = false, const Object *p_validator = nullptr);
|
||||
static bool set_property(Object *p_object, const StringName &p_property, const Variant &p_value, bool *r_valid = nullptr);
|
||||
static bool get_property(Object *p_object, const StringName &p_property, Variant &r_value);
|
||||
static bool has_property(const StringName &p_class, const StringName &p_property, bool p_no_inheritance = false);
|
||||
static int get_property_index(const StringName &p_class, const StringName &p_property, bool *r_is_valid = NULL);
|
||||
static Variant::Type get_property_type(const StringName &p_class, const StringName &p_property, bool *r_is_valid = NULL);
|
||||
static int get_property_index(const StringName &p_class, const StringName &p_property, bool *r_is_valid = nullptr);
|
||||
static Variant::Type get_property_type(const StringName &p_class, const StringName &p_property, bool *r_is_valid = nullptr);
|
||||
static StringName get_property_setter(StringName p_class, const StringName &p_property);
|
||||
static StringName get_property_getter(StringName p_class, const StringName &p_property);
|
||||
|
||||
|
@ -371,13 +371,13 @@ public:
|
|||
|
||||
static void bind_integer_constant(const StringName &p_class, const StringName &p_enum, const StringName &p_name, int p_constant);
|
||||
static void get_integer_constant_list(const StringName &p_class, List<String> *p_constants, bool p_no_inheritance = false);
|
||||
static int get_integer_constant(const StringName &p_class, const StringName &p_name, bool *p_success = NULL);
|
||||
static int get_integer_constant(const StringName &p_class, const StringName &p_name, bool *p_success = nullptr);
|
||||
|
||||
static StringName get_integer_constant_enum(const StringName &p_class, const StringName &p_name, bool p_no_inheritance = false);
|
||||
static void get_enum_list(const StringName &p_class, List<StringName> *p_enums, bool p_no_inheritance = false);
|
||||
static void get_enum_constants(const StringName &p_class, const StringName &p_enum, List<StringName> *p_constants, bool p_no_inheritance = false);
|
||||
|
||||
static Variant class_get_default_property_value(const StringName &p_class, const StringName &p_property, bool *r_valid = NULL);
|
||||
static Variant class_get_default_property_value(const StringName &p_class, const StringName &p_property, bool *r_valid = nullptr);
|
||||
|
||||
static StringName get_category(const StringName &p_node);
|
||||
|
||||
|
|
|
@ -113,7 +113,7 @@ CommandQueueMT::CommandQueueMT(bool p_sync) {
|
|||
if (p_sync)
|
||||
sync = memnew(Semaphore);
|
||||
else
|
||||
sync = NULL;
|
||||
sync = nullptr;
|
||||
}
|
||||
|
||||
CommandQueueMT::~CommandQueueMT() {
|
||||
|
|
|
@ -360,7 +360,7 @@ class CommandQueueMT {
|
|||
if (dealloc_one()) {
|
||||
goto tryagain;
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
} else {
|
||||
// ahead of dealloc_ptr, check that there is room
|
||||
|
@ -374,11 +374,11 @@ class CommandQueueMT {
|
|||
if (dealloc_one()) {
|
||||
goto tryagain;
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
// if this happens, it's a bug
|
||||
ERR_FAIL_COND_V((COMMAND_MEM_SIZE - write_ptr) < 8, NULL);
|
||||
ERR_FAIL_COND_V((COMMAND_MEM_SIZE - write_ptr) < 8, nullptr);
|
||||
// zero means, wrap to beginning
|
||||
|
||||
uint32_t *p = (uint32_t *)&command_mem[write_ptr];
|
||||
|
@ -406,7 +406,7 @@ class CommandQueueMT {
|
|||
lock();
|
||||
T *ret;
|
||||
|
||||
while ((ret = allocate<T>()) == NULL) {
|
||||
while ((ret = allocate<T>()) == nullptr) {
|
||||
|
||||
unlock();
|
||||
// sleep a little until fetch happened and some room is made
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
#include "core_string_names.h"
|
||||
|
||||
CoreStringNames *CoreStringNames::singleton = NULL;
|
||||
CoreStringNames *CoreStringNames::singleton = nullptr;
|
||||
|
||||
CoreStringNames::CoreStringNames() :
|
||||
_free(StaticCString::create("free")),
|
||||
|
|
|
@ -41,7 +41,7 @@ class CoreStringNames {
|
|||
static void create() { singleton = memnew(CoreStringNames); }
|
||||
static void free() {
|
||||
memdelete(singleton);
|
||||
singleton = NULL;
|
||||
singleton = nullptr;
|
||||
}
|
||||
|
||||
CoreStringNames();
|
||||
|
|
|
@ -61,7 +61,7 @@ private:
|
|||
_FORCE_INLINE_ uint32_t *_get_refcount() const {
|
||||
|
||||
if (!_ptr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
return reinterpret_cast<uint32_t *>(_ptr) - 2;
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ private:
|
|||
_FORCE_INLINE_ uint32_t *_get_size() const {
|
||||
|
||||
if (!_ptr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
return reinterpret_cast<uint32_t *>(_ptr) - 1;
|
||||
}
|
||||
|
@ -77,7 +77,7 @@ private:
|
|||
_FORCE_INLINE_ T *_get_data() const {
|
||||
|
||||
if (!_ptr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
return reinterpret_cast<T *>(_ptr);
|
||||
}
|
||||
|
||||
|
@ -261,7 +261,7 @@ Error CowData<T>::resize(int p_size) {
|
|||
if (p_size == 0) {
|
||||
// wants to clean up
|
||||
_unref(_ptr);
|
||||
_ptr = NULL;
|
||||
_ptr = nullptr;
|
||||
return OK;
|
||||
}
|
||||
|
||||
|
@ -356,7 +356,7 @@ void CowData<T>::_ref(const CowData &p_from) {
|
|||
return; // self assign, do nothing.
|
||||
|
||||
_unref(_ptr);
|
||||
_ptr = NULL;
|
||||
_ptr = nullptr;
|
||||
|
||||
if (!p_from._ptr)
|
||||
return; //nothing to do
|
||||
|
@ -369,7 +369,7 @@ void CowData<T>::_ref(const CowData &p_from) {
|
|||
template <class T>
|
||||
CowData<T>::CowData() {
|
||||
|
||||
_ptr = NULL;
|
||||
_ptr = nullptr;
|
||||
}
|
||||
|
||||
template <class T>
|
||||
|
|
|
@ -36,11 +36,11 @@
|
|||
|
||||
/// Resources
|
||||
|
||||
CryptoKey *(*CryptoKey::_create)() = NULL;
|
||||
CryptoKey *(*CryptoKey::_create)() = nullptr;
|
||||
CryptoKey *CryptoKey::create() {
|
||||
if (_create)
|
||||
return _create();
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void CryptoKey::_bind_methods() {
|
||||
|
@ -48,11 +48,11 @@ void CryptoKey::_bind_methods() {
|
|||
ClassDB::bind_method(D_METHOD("load", "path"), &CryptoKey::load);
|
||||
}
|
||||
|
||||
X509Certificate *(*X509Certificate::_create)() = NULL;
|
||||
X509Certificate *(*X509Certificate::_create)() = nullptr;
|
||||
X509Certificate *X509Certificate::create() {
|
||||
if (_create)
|
||||
return _create();
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void X509Certificate::_bind_methods() {
|
||||
|
@ -62,8 +62,8 @@ void X509Certificate::_bind_methods() {
|
|||
|
||||
/// Crypto
|
||||
|
||||
void (*Crypto::_load_default_certificates)(String p_path) = NULL;
|
||||
Crypto *(*Crypto::_create)() = NULL;
|
||||
void (*Crypto::_load_default_certificates)(String p_path) = nullptr;
|
||||
Crypto *(*Crypto::_create)() = nullptr;
|
||||
Crypto *Crypto::create() {
|
||||
if (_create)
|
||||
return _create();
|
||||
|
@ -87,11 +87,11 @@ PackedByteArray Crypto::generate_random_bytes(int p_bytes) {
|
|||
}
|
||||
|
||||
Ref<CryptoKey> Crypto::generate_rsa(int p_bytes) {
|
||||
ERR_FAIL_V_MSG(NULL, "generate_rsa is not available when mbedtls module is disabled.");
|
||||
ERR_FAIL_V_MSG(nullptr, "generate_rsa is not available when mbedtls module is disabled.");
|
||||
}
|
||||
|
||||
Ref<X509Certificate> Crypto::generate_self_signed_certificate(Ref<CryptoKey> p_key, String p_issuer_name, String p_not_before, String p_not_after) {
|
||||
ERR_FAIL_V_MSG(NULL, "generate_self_signed_certificate is not available when mbedtls module is disabled.");
|
||||
ERR_FAIL_V_MSG(nullptr, "generate_self_signed_certificate is not available when mbedtls module is disabled.");
|
||||
}
|
||||
|
||||
Crypto::Crypto() {
|
||||
|
@ -113,7 +113,7 @@ RES ResourceFormatLoaderCrypto::load(const String &p_path, const String &p_origi
|
|||
key->load(p_path);
|
||||
return key;
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void ResourceFormatLoaderCrypto::get_recognized_extensions(List<String> *p_extensions) const {
|
||||
|
|
|
@ -87,7 +87,7 @@ class ResourceFormatLoaderCrypto : public ResourceFormatLoader {
|
|||
GDCLASS(ResourceFormatLoaderCrypto, ResourceFormatLoader);
|
||||
|
||||
public:
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual bool handles_type(const String &p_type) const;
|
||||
virtual String get_resource_type(const String &p_path) const;
|
||||
|
|
|
@ -33,9 +33,9 @@
|
|||
#include "core/crypto/crypto_core.h"
|
||||
|
||||
Error HashingContext::start(HashType p_type) {
|
||||
ERR_FAIL_COND_V(ctx != NULL, ERR_ALREADY_IN_USE);
|
||||
ERR_FAIL_COND_V(ctx != nullptr, ERR_ALREADY_IN_USE);
|
||||
_create_ctx(p_type);
|
||||
ERR_FAIL_COND_V(ctx == NULL, ERR_UNAVAILABLE);
|
||||
ERR_FAIL_COND_V(ctx == nullptr, ERR_UNAVAILABLE);
|
||||
switch (type) {
|
||||
case HASH_MD5:
|
||||
return ((CryptoCore::MD5Context *)ctx)->start();
|
||||
|
@ -48,7 +48,7 @@ Error HashingContext::start(HashType p_type) {
|
|||
}
|
||||
|
||||
Error HashingContext::update(PackedByteArray p_chunk) {
|
||||
ERR_FAIL_COND_V(ctx == NULL, ERR_UNCONFIGURED);
|
||||
ERR_FAIL_COND_V(ctx == nullptr, ERR_UNCONFIGURED);
|
||||
size_t len = p_chunk.size();
|
||||
ERR_FAIL_COND_V(len == 0, FAILED);
|
||||
const uint8_t *r = p_chunk.ptr();
|
||||
|
@ -64,7 +64,7 @@ Error HashingContext::update(PackedByteArray p_chunk) {
|
|||
}
|
||||
|
||||
PackedByteArray HashingContext::finish() {
|
||||
ERR_FAIL_COND_V(ctx == NULL, PackedByteArray());
|
||||
ERR_FAIL_COND_V(ctx == nullptr, PackedByteArray());
|
||||
PackedByteArray out;
|
||||
Error err = FAILED;
|
||||
switch (type) {
|
||||
|
@ -99,7 +99,7 @@ void HashingContext::_create_ctx(HashType p_type) {
|
|||
ctx = memnew(CryptoCore::SHA256Context);
|
||||
break;
|
||||
default:
|
||||
ctx = NULL;
|
||||
ctx = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -116,7 +116,7 @@ void HashingContext::_delete_ctx() {
|
|||
memdelete((CryptoCore::SHA256Context *)ctx);
|
||||
break;
|
||||
}
|
||||
ctx = NULL;
|
||||
ctx = nullptr;
|
||||
}
|
||||
|
||||
void HashingContext::_bind_methods() {
|
||||
|
@ -129,10 +129,10 @@ void HashingContext::_bind_methods() {
|
|||
}
|
||||
|
||||
HashingContext::HashingContext() {
|
||||
ctx = NULL;
|
||||
ctx = nullptr;
|
||||
}
|
||||
|
||||
HashingContext::~HashingContext() {
|
||||
if (ctx != NULL)
|
||||
if (ctx != nullptr)
|
||||
_delete_ctx();
|
||||
}
|
||||
|
|
|
@ -227,7 +227,7 @@ Array DebuggerMarshalls::ScriptStackVariable::serialize(int max_size) {
|
|||
}
|
||||
|
||||
int len = 0;
|
||||
Error err = encode_variant(var, NULL, len, true);
|
||||
Error err = encode_variant(var, nullptr, len, true);
|
||||
if (err != OK)
|
||||
ERR_PRINT("Failed to encode variant.");
|
||||
|
||||
|
|
|
@ -35,8 +35,8 @@
|
|||
#include "core/debugger/script_debugger.h"
|
||||
#include "core/os/os.h"
|
||||
|
||||
EngineDebugger *EngineDebugger::singleton = NULL;
|
||||
ScriptDebugger *EngineDebugger::script_debugger = NULL;
|
||||
EngineDebugger *EngineDebugger::singleton = nullptr;
|
||||
ScriptDebugger *EngineDebugger::script_debugger = nullptr;
|
||||
|
||||
Map<StringName, EngineDebugger::Profiler> EngineDebugger::profilers;
|
||||
Map<StringName, EngineDebugger::Capture> EngineDebugger::captures;
|
||||
|
@ -173,7 +173,7 @@ void EngineDebugger::deinitialize() {
|
|||
singleton->poll_events(false);
|
||||
|
||||
memdelete(singleton);
|
||||
singleton = NULL;
|
||||
singleton = nullptr;
|
||||
profilers.clear();
|
||||
captures.clear();
|
||||
}
|
||||
|
@ -181,6 +181,6 @@ void EngineDebugger::deinitialize() {
|
|||
EngineDebugger::~EngineDebugger() {
|
||||
if (script_debugger)
|
||||
memdelete(script_debugger);
|
||||
script_debugger = NULL;
|
||||
singleton = NULL;
|
||||
script_debugger = nullptr;
|
||||
singleton = nullptr;
|
||||
}
|
||||
|
|
|
@ -50,10 +50,10 @@ public:
|
|||
class Profiler {
|
||||
friend class EngineDebugger;
|
||||
|
||||
ProfilingToggle toggle = NULL;
|
||||
ProfilingAdd add = NULL;
|
||||
ProfilingTick tick = NULL;
|
||||
void *data = NULL;
|
||||
ProfilingToggle toggle = nullptr;
|
||||
ProfilingAdd add = nullptr;
|
||||
ProfilingTick tick = nullptr;
|
||||
void *data = nullptr;
|
||||
bool active = false;
|
||||
|
||||
public:
|
||||
|
@ -69,8 +69,8 @@ public:
|
|||
class Capture {
|
||||
friend class EngineDebugger;
|
||||
|
||||
CaptureFunc capture = NULL;
|
||||
void *data = NULL;
|
||||
CaptureFunc capture = nullptr;
|
||||
void *data = nullptr;
|
||||
|
||||
public:
|
||||
Capture() {}
|
||||
|
@ -97,7 +97,7 @@ protected:
|
|||
|
||||
public:
|
||||
_FORCE_INLINE_ static EngineDebugger *get_singleton() { return singleton; }
|
||||
_FORCE_INLINE_ static bool is_active() { return singleton != NULL && script_debugger != NULL; }
|
||||
_FORCE_INLINE_ static bool is_active() { return singleton != nullptr && script_debugger != nullptr; }
|
||||
|
||||
_FORCE_INLINE_ static ScriptDebugger *get_script_debugger() { return script_debugger; };
|
||||
|
||||
|
|
|
@ -402,7 +402,7 @@ LocalDebugger::LocalDebugger() {
|
|||
[](void *p_user, bool p_enable, const Array &p_opts) {
|
||||
((ScriptsProfiler *)p_user)->toggle(p_enable, p_opts);
|
||||
},
|
||||
NULL,
|
||||
nullptr,
|
||||
[](void *p_user, float p_frame_time, float p_idle_time, float p_physics_time, float p_physics_frame_time) {
|
||||
((ScriptsProfiler *)p_user)->tick(p_frame_time, p_idle_time, p_physics_time, p_physics_frame_time);
|
||||
});
|
||||
|
|
|
@ -40,7 +40,7 @@ class LocalDebugger : public EngineDebugger {
|
|||
private:
|
||||
struct ScriptsProfiler;
|
||||
|
||||
ScriptsProfiler *scripts_profiler = NULL;
|
||||
ScriptsProfiler *scripts_profiler = nullptr;
|
||||
|
||||
String target_function;
|
||||
Map<String, String> options;
|
||||
|
|
|
@ -373,7 +373,7 @@ struct RemoteDebugger::VisualProfiler {
|
|||
|
||||
struct RemoteDebugger::PerformanceProfiler {
|
||||
|
||||
Object *performance = NULL;
|
||||
Object *performance = nullptr;
|
||||
int last_perf_time = 0;
|
||||
|
||||
void toggle(bool p_enable, const Array &p_opts) {}
|
||||
|
@ -867,7 +867,7 @@ RemoteDebugger *RemoteDebugger::create_for_uri(const String &p_uri) {
|
|||
Ref<RemoteDebuggerPeer> peer = RemoteDebuggerPeer::create_from_uri(p_uri);
|
||||
if (peer.is_valid())
|
||||
return memnew(RemoteDebugger(peer));
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
RemoteDebugger::RemoteDebugger(Ref<RemoteDebuggerPeer> p_peer) {
|
||||
|
|
|
@ -50,10 +50,10 @@ private:
|
|||
struct VisualProfiler;
|
||||
struct PerformanceProfiler;
|
||||
|
||||
NetworkProfiler *network_profiler = NULL;
|
||||
ServersProfiler *servers_profiler = NULL;
|
||||
VisualProfiler *visual_profiler = NULL;
|
||||
PerformanceProfiler *performance_profiler = NULL;
|
||||
NetworkProfiler *network_profiler = nullptr;
|
||||
ServersProfiler *servers_profiler = nullptr;
|
||||
VisualProfiler *visual_profiler = nullptr;
|
||||
PerformanceProfiler *performance_profiler = nullptr;
|
||||
|
||||
Ref<RemoteDebuggerPeer> peer;
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@ void RemoteDebuggerPeerTCP::close() {
|
|||
running = false;
|
||||
Thread::wait_to_finish(thread);
|
||||
memdelete(thread);
|
||||
thread = NULL;
|
||||
thread = nullptr;
|
||||
}
|
||||
tcp_client->disconnect_from_host();
|
||||
out_buf.resize(0);
|
||||
|
@ -106,7 +106,7 @@ void RemoteDebuggerPeerTCP::_write_out() {
|
|||
out_queue.pop_front();
|
||||
mutex.unlock();
|
||||
int size = 0;
|
||||
Error err = encode_variant(var, NULL, size);
|
||||
Error err = encode_variant(var, nullptr, size);
|
||||
ERR_CONTINUE(err != OK || size > out_buf.size() - 4); // 4 bytes separator.
|
||||
encode_uint32(size, buf);
|
||||
encode_variant(var, buf + 4, size);
|
||||
|
|
|
@ -58,7 +58,7 @@ class RemoteDebuggerPeerTCP : public RemoteDebuggerPeer {
|
|||
private:
|
||||
Ref<StreamPeerTCP> tcp_client;
|
||||
Mutex mutex;
|
||||
Thread *thread = NULL;
|
||||
Thread *thread = nullptr;
|
||||
List<Array> in_queue;
|
||||
List<Array> out_queue;
|
||||
int out_left = 0;
|
||||
|
|
|
@ -47,7 +47,7 @@ class ScriptDebugger {
|
|||
|
||||
Map<int, Set<StringName>> breakpoints;
|
||||
|
||||
ScriptLanguage *break_lang = NULL;
|
||||
ScriptLanguage *break_lang = nullptr;
|
||||
Vector<StackInfo> error_stack_info;
|
||||
|
||||
public:
|
||||
|
|
|
@ -90,7 +90,7 @@ const Variant *Dictionary::getptr(const Variant &p_key) const {
|
|||
OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::ConstElement E = ((const OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator> *)&_p->variant_map)->find(p_key);
|
||||
|
||||
if (!E)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
return &E.get();
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ Variant *Dictionary::getptr(const Variant &p_key) {
|
|||
OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.find(p_key);
|
||||
|
||||
if (!E)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
return &E.get();
|
||||
}
|
||||
|
||||
|
@ -186,7 +186,7 @@ void Dictionary::_unref() const {
|
|||
if (_p->refcount.unref()) {
|
||||
memdelete(_p);
|
||||
}
|
||||
_p = NULL;
|
||||
_p = nullptr;
|
||||
}
|
||||
uint32_t Dictionary::hash() const {
|
||||
|
||||
|
@ -236,17 +236,17 @@ Array Dictionary::values() const {
|
|||
|
||||
const Variant *Dictionary::next(const Variant *p_key) const {
|
||||
|
||||
if (p_key == NULL) {
|
||||
if (p_key == nullptr) {
|
||||
// caller wants to get the first element
|
||||
if (_p->variant_map.front())
|
||||
return &_p->variant_map.front().key();
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.find(*p_key);
|
||||
|
||||
if (E && E.next())
|
||||
return &E.next().key();
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Dictionary Dictionary::duplicate(bool p_deep) const {
|
||||
|
@ -270,7 +270,7 @@ const void *Dictionary::id() const {
|
|||
}
|
||||
|
||||
Dictionary::Dictionary(const Dictionary &p_from) {
|
||||
_p = NULL;
|
||||
_p = nullptr;
|
||||
_ref(p_from);
|
||||
}
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ public:
|
|||
uint32_t hash() const;
|
||||
void operator=(const Dictionary &p_dictionary);
|
||||
|
||||
const Variant *next(const Variant *p_key = NULL) const;
|
||||
const Variant *next(const Variant *p_key = nullptr) const;
|
||||
|
||||
Array keys() const;
|
||||
Array values() const;
|
||||
|
|
|
@ -114,7 +114,7 @@ Dictionary Engine::get_version_info() const {
|
|||
|
||||
static Array array_from_info(const char *const *info_list) {
|
||||
Array arr;
|
||||
for (int i = 0; info_list[i] != NULL; i++) {
|
||||
for (int i = 0; info_list[i] != nullptr; i++) {
|
||||
arr.push_back(info_list[i]);
|
||||
}
|
||||
return arr;
|
||||
|
@ -193,7 +193,7 @@ void Engine::add_singleton(const Singleton &p_singleton) {
|
|||
Object *Engine::get_singleton_object(const String &p_name) const {
|
||||
|
||||
const Map<StringName, Object *>::Element *E = singleton_ptrs.find(p_name);
|
||||
ERR_FAIL_COND_V_MSG(!E, NULL, "Failed to retrieve non-existent singleton '" + p_name + "'.");
|
||||
ERR_FAIL_COND_V_MSG(!E, nullptr, "Failed to retrieve non-existent singleton '" + p_name + "'.");
|
||||
return E->get();
|
||||
};
|
||||
|
||||
|
@ -208,7 +208,7 @@ void Engine::get_singletons(List<Singleton> *p_singletons) {
|
|||
p_singletons->push_back(E->get());
|
||||
}
|
||||
|
||||
Engine *Engine::singleton = NULL;
|
||||
Engine *Engine::singleton = nullptr;
|
||||
|
||||
Engine *Engine::get_singleton() {
|
||||
return singleton;
|
||||
|
|
|
@ -42,7 +42,7 @@ public:
|
|||
struct Singleton {
|
||||
StringName name;
|
||||
Object *ptr;
|
||||
Singleton(const StringName &p_name = StringName(), Object *p_ptr = NULL) :
|
||||
Singleton(const StringName &p_name = StringName(), Object *p_ptr = nullptr) :
|
||||
name(p_name),
|
||||
ptr(p_ptr) {
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
#include "core/ustring.h"
|
||||
#include "os/os.h"
|
||||
|
||||
static ErrorHandlerList *error_handler_list = NULL;
|
||||
static ErrorHandlerList *error_handler_list = nullptr;
|
||||
|
||||
void add_error_handler(ErrorHandlerList *p_handler) {
|
||||
|
||||
|
@ -48,7 +48,7 @@ void remove_error_handler(ErrorHandlerList *p_handler) {
|
|||
|
||||
_global_lock();
|
||||
|
||||
ErrorHandlerList *prev = NULL;
|
||||
ErrorHandlerList *prev = nullptr;
|
||||
ErrorHandlerList *l = error_handler_list;
|
||||
|
||||
while (l) {
|
||||
|
|
|
@ -197,14 +197,14 @@ private:
|
|||
e = e->next;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Element *create_element(const TKey &p_key) {
|
||||
|
||||
/* if element doesn't exist, create it */
|
||||
Element *e = memnew(Element);
|
||||
ERR_FAIL_COND_V_MSG(!e, NULL, "Out of memory.");
|
||||
ERR_FAIL_COND_V_MSG(!e, nullptr, "Out of memory.");
|
||||
uint32_t hash = Hasher::hash(p_key);
|
||||
uint32_t index = hash & ((1 << hash_table_power) - 1);
|
||||
e->next = hash_table[index];
|
||||
|
@ -234,7 +234,7 @@ private:
|
|||
|
||||
for (int i = 0; i < (1 << p_t.hash_table_power); i++) {
|
||||
|
||||
hash_table[i] = NULL;
|
||||
hash_table[i] = nullptr;
|
||||
|
||||
const Element *e = p_t.hash_table[i];
|
||||
|
||||
|
@ -260,7 +260,7 @@ public:
|
|||
|
||||
Element *set(const Pair &p_pair) {
|
||||
|
||||
Element *e = NULL;
|
||||
Element *e = nullptr;
|
||||
if (!hash_table)
|
||||
make_hash_table(); // if no table, make one
|
||||
else
|
||||
|
@ -272,7 +272,7 @@ public:
|
|||
|
||||
e = create_element(p_pair.key);
|
||||
if (!e)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
check_hash_table(); // perform mantenience routine
|
||||
}
|
||||
|
||||
|
@ -282,12 +282,12 @@ public:
|
|||
|
||||
bool has(const TKey &p_key) const {
|
||||
|
||||
return getptr(p_key) != NULL;
|
||||
return getptr(p_key) != nullptr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a key from data, return a const reference.
|
||||
* WARNING: this doesn't check errors, use either getptr and check NULL, or check
|
||||
* WARNING: this doesn't check errors, use either getptr and check nullptr, or check
|
||||
* first with has(key)
|
||||
*/
|
||||
|
||||
|
@ -306,38 +306,38 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Same as get, except it can return NULL when item was not found.
|
||||
* Same as get, except it can return nullptr when item was not found.
|
||||
* This is mainly used for speed purposes.
|
||||
*/
|
||||
|
||||
_FORCE_INLINE_ TData *getptr(const TKey &p_key) {
|
||||
|
||||
if (unlikely(!hash_table))
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Element *e = const_cast<Element *>(get_element(p_key));
|
||||
|
||||
if (e)
|
||||
return &e->pair.data;
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ const TData *getptr(const TKey &p_key) const {
|
||||
|
||||
if (unlikely(!hash_table))
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
const Element *e = const_cast<Element *>(get_element(p_key));
|
||||
|
||||
if (e)
|
||||
return &e->pair.data;
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as get, except it can return NULL when item was not found.
|
||||
* Same as get, except it can return nullptr when item was not found.
|
||||
* This version is custom, will take a hash and a custom key (that should support operator==()
|
||||
*/
|
||||
|
||||
|
@ -345,7 +345,7 @@ public:
|
|||
_FORCE_INLINE_ TData *custom_getptr(C p_custom_key, uint32_t p_custom_hash) {
|
||||
|
||||
if (unlikely(!hash_table))
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
uint32_t hash = p_custom_hash;
|
||||
uint32_t index = hash & ((1 << hash_table_power) - 1);
|
||||
|
@ -364,14 +364,14 @@ public:
|
|||
e = e->next;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
template <class C>
|
||||
_FORCE_INLINE_ const TData *custom_getptr(C p_custom_key, uint32_t p_custom_hash) const {
|
||||
|
||||
if (unlikely(!hash_table))
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
uint32_t hash = p_custom_hash;
|
||||
uint32_t index = hash & ((1 << hash_table_power) - 1);
|
||||
|
@ -390,7 +390,7 @@ public:
|
|||
e = e->next;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -406,7 +406,7 @@ public:
|
|||
uint32_t index = hash & ((1 << hash_table_power) - 1);
|
||||
|
||||
Element *e = hash_table[index];
|
||||
Element *p = NULL;
|
||||
Element *p = nullptr;
|
||||
while (e) {
|
||||
|
||||
/* checking hash first avoids comparing key, which may take longer */
|
||||
|
@ -443,7 +443,7 @@ public:
|
|||
}
|
||||
inline TData &operator[](const TKey &p_key) { //assignment
|
||||
|
||||
Element *e = NULL;
|
||||
Element *e = nullptr;
|
||||
if (!hash_table)
|
||||
make_hash_table(); // if no table, make one
|
||||
else
|
||||
|
@ -462,12 +462,12 @@ public:
|
|||
|
||||
/**
|
||||
* Get the next key to p_key, and the first key if p_key is null.
|
||||
* Returns a pointer to the next key if found, NULL otherwise.
|
||||
* Returns a pointer to the next key if found, nullptr otherwise.
|
||||
* Adding/Removing elements while iterating will, of course, have unexpected results, don't do it.
|
||||
*
|
||||
* Example:
|
||||
*
|
||||
* const TKey *k=NULL;
|
||||
* const TKey *k=nullptr;
|
||||
*
|
||||
* while( (k=table.next(k)) ) {
|
||||
*
|
||||
|
@ -478,7 +478,7 @@ public:
|
|||
const TKey *next(const TKey *p_key) const {
|
||||
|
||||
if (unlikely(!hash_table))
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
if (!p_key) { /* get the first key */
|
||||
|
||||
|
@ -492,7 +492,7 @@ public:
|
|||
} else { /* get the next key */
|
||||
|
||||
const Element *e = get_element(*p_key);
|
||||
ERR_FAIL_COND_V_MSG(!e, NULL, "Invalid key supplied.");
|
||||
ERR_FAIL_COND_V_MSG(!e, nullptr, "Invalid key supplied.");
|
||||
if (e->next) {
|
||||
/* if there is a "next" in the list, return that */
|
||||
return &e->next->pair.key;
|
||||
|
@ -511,7 +511,7 @@ public:
|
|||
/* nothing found, was at end */
|
||||
}
|
||||
|
||||
return NULL; /* nothing found */
|
||||
return nullptr; /* nothing found */
|
||||
}
|
||||
|
||||
inline unsigned int size() const {
|
||||
|
@ -552,7 +552,7 @@ public:
|
|||
}
|
||||
|
||||
HashMap() {
|
||||
hash_table = NULL;
|
||||
hash_table = nullptr;
|
||||
elements = 0;
|
||||
hash_table_power = 0;
|
||||
}
|
||||
|
@ -586,7 +586,7 @@ public:
|
|||
|
||||
HashMap(const HashMap &p_table) {
|
||||
|
||||
hash_table = NULL;
|
||||
hash_table = nullptr;
|
||||
elements = 0;
|
||||
hash_table_power = 0;
|
||||
|
||||
|
|
|
@ -84,10 +84,10 @@ const char *Image::format_names[Image::FORMAT_MAX] = {
|
|||
|
||||
};
|
||||
|
||||
SavePNGFunc Image::save_png_func = NULL;
|
||||
SaveEXRFunc Image::save_exr_func = NULL;
|
||||
SavePNGFunc Image::save_png_func = nullptr;
|
||||
SaveEXRFunc Image::save_exr_func = nullptr;
|
||||
|
||||
SavePNGBufferFunc Image::save_png_buffer_func = NULL;
|
||||
SavePNGBufferFunc Image::save_png_buffer_func = nullptr;
|
||||
|
||||
void Image::_put_pixelb(int p_x, int p_y, uint32_t p_pixelsize, uint8_t *p_data, const uint8_t *p_pixel) {
|
||||
|
||||
|
@ -2099,14 +2099,14 @@ Error Image::load(const String &p_path) {
|
|||
|
||||
Error Image::save_png(const String &p_path) const {
|
||||
|
||||
if (save_png_func == NULL)
|
||||
if (save_png_func == nullptr)
|
||||
return ERR_UNAVAILABLE;
|
||||
|
||||
return save_png_func(p_path, Ref<Image>((Image *)this));
|
||||
}
|
||||
|
||||
Vector<uint8_t> Image::save_png_to_buffer() const {
|
||||
if (save_png_buffer_func == NULL) {
|
||||
if (save_png_buffer_func == nullptr) {
|
||||
return Vector<uint8_t>();
|
||||
}
|
||||
|
||||
|
@ -2115,7 +2115,7 @@ Vector<uint8_t> Image::save_png_to_buffer() const {
|
|||
|
||||
Error Image::save_exr(const String &p_path, bool p_grayscale) const {
|
||||
|
||||
if (save_exr_func == NULL)
|
||||
if (save_exr_func == nullptr)
|
||||
return ERR_UNAVAILABLE;
|
||||
|
||||
return save_exr_func(p_path, Ref<Image>((Image *)this), p_grayscale);
|
||||
|
@ -2533,28 +2533,28 @@ void Image::fill(const Color &c) {
|
|||
}
|
||||
}
|
||||
|
||||
ImageMemLoadFunc Image::_png_mem_loader_func = NULL;
|
||||
ImageMemLoadFunc Image::_jpg_mem_loader_func = NULL;
|
||||
ImageMemLoadFunc Image::_webp_mem_loader_func = NULL;
|
||||
ImageMemLoadFunc Image::_png_mem_loader_func = nullptr;
|
||||
ImageMemLoadFunc Image::_jpg_mem_loader_func = nullptr;
|
||||
ImageMemLoadFunc Image::_webp_mem_loader_func = nullptr;
|
||||
|
||||
void (*Image::_image_compress_bc_func)(Image *, float, Image::UsedChannels) = NULL;
|
||||
void (*Image::_image_compress_bptc_func)(Image *, float, Image::UsedChannels) = NULL;
|
||||
void (*Image::_image_compress_pvrtc2_func)(Image *) = NULL;
|
||||
void (*Image::_image_compress_pvrtc4_func)(Image *) = NULL;
|
||||
void (*Image::_image_compress_etc1_func)(Image *, float) = NULL;
|
||||
void (*Image::_image_compress_etc2_func)(Image *, float, Image::UsedChannels) = NULL;
|
||||
void (*Image::_image_decompress_pvrtc)(Image *) = NULL;
|
||||
void (*Image::_image_decompress_bc)(Image *) = NULL;
|
||||
void (*Image::_image_decompress_bptc)(Image *) = NULL;
|
||||
void (*Image::_image_decompress_etc1)(Image *) = NULL;
|
||||
void (*Image::_image_decompress_etc2)(Image *) = NULL;
|
||||
void (*Image::_image_compress_bc_func)(Image *, float, Image::UsedChannels) = nullptr;
|
||||
void (*Image::_image_compress_bptc_func)(Image *, float, Image::UsedChannels) = nullptr;
|
||||
void (*Image::_image_compress_pvrtc2_func)(Image *) = nullptr;
|
||||
void (*Image::_image_compress_pvrtc4_func)(Image *) = nullptr;
|
||||
void (*Image::_image_compress_etc1_func)(Image *, float) = nullptr;
|
||||
void (*Image::_image_compress_etc2_func)(Image *, float, Image::UsedChannels) = nullptr;
|
||||
void (*Image::_image_decompress_pvrtc)(Image *) = nullptr;
|
||||
void (*Image::_image_decompress_bc)(Image *) = nullptr;
|
||||
void (*Image::_image_decompress_bptc)(Image *) = nullptr;
|
||||
void (*Image::_image_decompress_etc1)(Image *) = nullptr;
|
||||
void (*Image::_image_decompress_etc2)(Image *) = nullptr;
|
||||
|
||||
Vector<uint8_t> (*Image::lossy_packer)(const Ref<Image> &, float) = NULL;
|
||||
Ref<Image> (*Image::lossy_unpacker)(const Vector<uint8_t> &) = NULL;
|
||||
Vector<uint8_t> (*Image::lossless_packer)(const Ref<Image> &) = NULL;
|
||||
Ref<Image> (*Image::lossless_unpacker)(const Vector<uint8_t> &) = NULL;
|
||||
Vector<uint8_t> (*Image::basis_universal_packer)(const Ref<Image> &, Image::UsedChannels) = NULL;
|
||||
Ref<Image> (*Image::basis_universal_unpacker)(const Vector<uint8_t> &) = NULL;
|
||||
Vector<uint8_t> (*Image::lossy_packer)(const Ref<Image> &, float) = nullptr;
|
||||
Ref<Image> (*Image::lossy_unpacker)(const Vector<uint8_t> &) = nullptr;
|
||||
Vector<uint8_t> (*Image::lossless_packer)(const Ref<Image> &) = nullptr;
|
||||
Ref<Image> (*Image::lossless_unpacker)(const Vector<uint8_t> &) = nullptr;
|
||||
Vector<uint8_t> (*Image::basis_universal_packer)(const Ref<Image> &, Image::UsedChannels) = nullptr;
|
||||
Ref<Image> (*Image::basis_universal_unpacker)(const Vector<uint8_t> &) = nullptr;
|
||||
|
||||
void Image::_set_data(const Dictionary &p_data) {
|
||||
|
||||
|
|
|
@ -187,7 +187,7 @@ private:
|
|||
|
||||
_FORCE_INLINE_ void _get_mipmap_offset_and_size(int p_mipmap, int &r_offset, int &r_width, int &r_height) const; //get where the mipmap begins in data
|
||||
|
||||
static int _get_dst_image_size(int p_width, int p_height, Format p_format, int &r_mipmaps, int p_mipmaps = -1, int *r_mm_width = NULL, int *r_mm_height = NULL);
|
||||
static int _get_dst_image_size(int p_width, int p_height, Format p_format, int &r_mipmaps, int p_mipmaps = -1, int *r_mm_width = nullptr, int *r_mm_height = nullptr);
|
||||
bool _can_modify(Format p_format) const;
|
||||
|
||||
_FORCE_INLINE_ void _put_pixelb(int p_x, int p_y, uint32_t p_pixelsize, uint8_t *p_data, const uint8_t *p_pixel);
|
||||
|
|
|
@ -366,10 +366,10 @@ bool InputEventKey::action_match(const Ref<InputEvent> &p_event, bool *p_pressed
|
|||
match = get_keycode() == key->get_keycode() && (!key->is_pressed() || (code & event_code) == code);
|
||||
}
|
||||
if (match) {
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = key->is_pressed();
|
||||
if (p_strength != NULL)
|
||||
*p_strength = (p_pressed != NULL && *p_pressed) ? 1.0f : 0.0f;
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = (p_pressed != nullptr && *p_pressed) ? 1.0f : 0.0f;
|
||||
}
|
||||
return match;
|
||||
}
|
||||
|
@ -541,10 +541,10 @@ bool InputEventMouseButton::action_match(const Ref<InputEvent> &p_event, bool *p
|
|||
|
||||
bool match = mb->button_index == button_index;
|
||||
if (match) {
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = mb->is_pressed();
|
||||
if (p_strength != NULL)
|
||||
*p_strength = (p_pressed != NULL && *p_pressed) ? 1.0f : 0.0f;
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = (p_pressed != nullptr && *p_pressed) ? 1.0f : 0.0f;
|
||||
}
|
||||
|
||||
return match;
|
||||
|
@ -815,9 +815,9 @@ bool InputEventJoypadMotion::action_match(const Ref<InputEvent> &p_event, bool *
|
|||
if (match) {
|
||||
bool same_direction = (((axis_value < 0) == (jm->axis_value < 0)) || jm->axis_value == 0);
|
||||
bool pressed = same_direction ? Math::abs(jm->get_axis_value()) >= p_deadzone : false;
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = pressed;
|
||||
if (p_strength != NULL) {
|
||||
if (p_strength != nullptr) {
|
||||
if (pressed) {
|
||||
if (p_deadzone == 1.0f) {
|
||||
*p_strength = 1.0f;
|
||||
|
@ -892,10 +892,10 @@ bool InputEventJoypadButton::action_match(const Ref<InputEvent> &p_event, bool *
|
|||
|
||||
bool match = button_index == jb->button_index;
|
||||
if (match) {
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = jb->is_pressed();
|
||||
if (p_strength != NULL)
|
||||
*p_strength = (p_pressed != NULL && *p_pressed) ? 1.0f : 0.0f;
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = (p_pressed != nullptr && *p_pressed) ? 1.0f : 0.0f;
|
||||
}
|
||||
|
||||
return match;
|
||||
|
@ -1140,10 +1140,10 @@ bool InputEventAction::action_match(const Ref<InputEvent> &p_event, bool *p_pres
|
|||
|
||||
bool match = action == act->action;
|
||||
if (match) {
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = act->pressed;
|
||||
if (p_strength != NULL)
|
||||
*p_strength = (p_pressed != NULL && *p_pressed) ? 1.0f : 0.0f;
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = (p_pressed != nullptr && *p_pressed) ? 1.0f : 0.0f;
|
||||
}
|
||||
return match;
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
#include "editor/editor_settings.h"
|
||||
#endif
|
||||
|
||||
InputFilter *InputFilter::singleton = NULL;
|
||||
InputFilter *InputFilter::singleton = nullptr;
|
||||
|
||||
void (*InputFilter::set_mouse_mode_func)(InputFilter::MouseMode) = nullptr;
|
||||
InputFilter::MouseMode (*InputFilter::get_mouse_mode_func)() = nullptr;
|
||||
|
@ -1028,9 +1028,9 @@ void InputFilter::_axis_event(int p_device, int p_axis, float p_value) {
|
|||
InputFilter::JoyEvent InputFilter::_find_to_event(String p_to) {
|
||||
|
||||
// string names of the SDL buttons in the same order as input_event.h godot buttons
|
||||
static const char *buttons[] = { "a", "b", "x", "y", "leftshoulder", "rightshoulder", "lefttrigger", "righttrigger", "leftstick", "rightstick", "back", "start", "dpup", "dpdown", "dpleft", "dpright", "guide", NULL };
|
||||
static const char *buttons[] = { "a", "b", "x", "y", "leftshoulder", "rightshoulder", "lefttrigger", "righttrigger", "leftstick", "rightstick", "back", "start", "dpup", "dpdown", "dpleft", "dpright", "guide", nullptr };
|
||||
|
||||
static const char *axis[] = { "leftx", "lefty", "rightx", "righty", NULL };
|
||||
static const char *axis[] = { "leftx", "lefty", "rightx", "righty", nullptr };
|
||||
|
||||
JoyEvent ret;
|
||||
ret.type = -1;
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
#include "core/os/keyboard.h"
|
||||
#include "core/project_settings.h"
|
||||
|
||||
InputMap *InputMap::singleton = NULL;
|
||||
InputMap *InputMap::singleton = nullptr;
|
||||
|
||||
int InputMap::ALL_DEVICES = -1;
|
||||
|
||||
|
@ -116,7 +116,7 @@ List<Ref<InputEvent>>::Element *InputMap::_find_event(Action &p_action, const Re
|
|||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool InputMap::has_action(const StringName &p_action) const {
|
||||
|
@ -144,7 +144,7 @@ void InputMap::action_add_event(const StringName &p_action, const Ref<InputEvent
|
|||
bool InputMap::action_has_event(const StringName &p_action, const Ref<InputEvent> &p_event) {
|
||||
|
||||
ERR_FAIL_COND_V_MSG(!input_map.has(p_action), false, "Request for nonexistent InputMap action '" + String(p_action) + "'.");
|
||||
return (_find_event(input_map[p_action], p_event) != NULL);
|
||||
return (_find_event(input_map[p_action], p_event) != nullptr);
|
||||
}
|
||||
|
||||
void InputMap::action_erase_event(const StringName &p_action, const Ref<InputEvent> &p_event) {
|
||||
|
@ -181,7 +181,7 @@ const List<Ref<InputEvent>> *InputMap::get_action_list(const StringName &p_actio
|
|||
|
||||
const Map<StringName, Action>::Element *E = input_map.find(p_action);
|
||||
if (!E)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
return &E->get().inputs;
|
||||
}
|
||||
|
@ -196,20 +196,20 @@ bool InputMap::event_get_action_status(const Ref<InputEvent> &p_event, const Str
|
|||
|
||||
Ref<InputEventAction> input_event_action = p_event;
|
||||
if (input_event_action.is_valid()) {
|
||||
if (p_pressed != NULL)
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = input_event_action->is_pressed();
|
||||
if (p_strength != NULL)
|
||||
*p_strength = (p_pressed != NULL && *p_pressed) ? input_event_action->get_strength() : 0.0f;
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = (p_pressed != nullptr && *p_pressed) ? input_event_action->get_strength() : 0.0f;
|
||||
return input_event_action->get_action() == p_action;
|
||||
}
|
||||
|
||||
bool pressed;
|
||||
float strength;
|
||||
List<Ref<InputEvent>>::Element *event = _find_event(E->get(), p_event, &pressed, &strength);
|
||||
if (event != NULL) {
|
||||
if (p_pressed != NULL)
|
||||
if (event != nullptr) {
|
||||
if (p_pressed != nullptr)
|
||||
*p_pressed = pressed;
|
||||
if (p_strength != NULL)
|
||||
if (p_strength != nullptr)
|
||||
*p_strength = strength;
|
||||
return true;
|
||||
} else {
|
||||
|
|
|
@ -55,7 +55,7 @@ private:
|
|||
|
||||
mutable Map<StringName, Action> input_map;
|
||||
|
||||
List<Ref<InputEvent>>::Element *_find_event(Action &p_action, const Ref<InputEvent> &p_event, bool *p_pressed = NULL, float *p_strength = NULL) const;
|
||||
List<Ref<InputEvent>>::Element *_find_event(Action &p_action, const Ref<InputEvent> &p_event, bool *p_pressed = nullptr, float *p_strength = nullptr) const;
|
||||
|
||||
Array _get_action_list(const StringName &p_action);
|
||||
Array _get_actions();
|
||||
|
@ -79,7 +79,7 @@ public:
|
|||
|
||||
const List<Ref<InputEvent>> *get_action_list(const StringName &p_action);
|
||||
bool event_is_action(const Ref<InputEvent> &p_event, const StringName &p_action) const;
|
||||
bool event_get_action_status(const Ref<InputEvent> &p_event, const StringName &p_action, bool *p_pressed = NULL, float *p_strength = NULL) const;
|
||||
bool event_get_action_status(const Ref<InputEvent> &p_event, const StringName &p_action, bool *p_pressed = nullptr, float *p_strength = nullptr) const;
|
||||
|
||||
const Map<StringName, Action> &get_action_map() const;
|
||||
void load_from_globals();
|
||||
|
|
|
@ -290,7 +290,7 @@ Error ConfigFile::_parse(const String &p_path, VariantParser::Stream *p_stream)
|
|||
next_tag.fields.clear();
|
||||
next_tag.name = String();
|
||||
|
||||
Error err = VariantParser::parse_tag_assign_eof(p_stream, lines, error_text, next_tag, assign, value, NULL, true);
|
||||
Error err = VariantParser::parse_tag_assign_eof(p_stream, lines, error_text, next_tag, assign, value, nullptr, true);
|
||||
if (err == ERR_FILE_EOF) {
|
||||
return OK;
|
||||
} else if (err != OK) {
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "core/os/file_access.h"
|
||||
#include "core/project_settings.h"
|
||||
|
||||
DTLSServer *(*DTLSServer::_create)() = NULL;
|
||||
DTLSServer *(*DTLSServer::_create)() = nullptr;
|
||||
bool DTLSServer::available = false;
|
||||
|
||||
DTLSServer *DTLSServer::create() {
|
||||
|
|
|
@ -64,7 +64,7 @@ Error FileAccessCompressed::open_after_magic(FileAccess *p_base) {
|
|||
cmode = (Compression::Mode)f->get_32();
|
||||
block_size = f->get_32();
|
||||
if (block_size == 0) {
|
||||
f = NULL; // Let the caller to handle the FileAccess object if failed to open as compressed file.
|
||||
f = nullptr; // Let the caller to handle the FileAccess object if failed to open as compressed file.
|
||||
ERR_FAIL_V_MSG(ERR_FILE_CORRUPT, "Can't open compressed file '" + p_base->get_path() + "' with block size 0, it is corrupted.");
|
||||
}
|
||||
read_total = f->get_32();
|
||||
|
@ -109,7 +109,7 @@ Error FileAccessCompressed::_open(const String &p_path, int p_mode_flags) {
|
|||
if (err != OK) {
|
||||
//not openable
|
||||
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
return err;
|
||||
}
|
||||
|
||||
|
@ -131,7 +131,7 @@ Error FileAccessCompressed::_open(const String &p_path, int p_mode_flags) {
|
|||
rmagic[4] = 0;
|
||||
if (magic != rmagic || open_after_magic(f) != OK) {
|
||||
memdelete(f);
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
return ERR_FILE_UNRECOGNIZED;
|
||||
}
|
||||
}
|
||||
|
@ -187,12 +187,12 @@ void FileAccessCompressed::close() {
|
|||
}
|
||||
|
||||
memdelete(f);
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
}
|
||||
|
||||
bool FileAccessCompressed::is_open() const {
|
||||
|
||||
return f != NULL;
|
||||
return f != nullptr;
|
||||
}
|
||||
|
||||
void FileAccessCompressed::seek(size_t p_position) {
|
||||
|
@ -392,20 +392,20 @@ Error FileAccessCompressed::_set_unix_permissions(const String &p_file, uint32_t
|
|||
FileAccessCompressed::FileAccessCompressed() :
|
||||
cmode(Compression::MODE_ZSTD),
|
||||
writing(false),
|
||||
write_ptr(0),
|
||||
write_ptr(nullptr),
|
||||
write_buffer_size(0),
|
||||
write_max(0),
|
||||
block_size(0),
|
||||
read_eof(false),
|
||||
at_end(false),
|
||||
read_ptr(NULL),
|
||||
read_ptr(nullptr),
|
||||
read_block(0),
|
||||
read_block_count(0),
|
||||
read_block_size(0),
|
||||
read_pos(0),
|
||||
read_total(0),
|
||||
magic("GCMP"),
|
||||
f(NULL) {
|
||||
f(nullptr) {
|
||||
}
|
||||
|
||||
FileAccessCompressed::~FileAccessCompressed() {
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
|
||||
Error FileAccessEncrypted::open_and_parse(FileAccess *p_base, const Vector<uint8_t> &p_key, Mode p_mode) {
|
||||
|
||||
ERR_FAIL_COND_V_MSG(file != NULL, ERR_ALREADY_IN_USE, "Can't open file while another file from path '" + file->get_path_absolute() + "' is open.");
|
||||
ERR_FAIL_COND_V_MSG(file != nullptr, ERR_ALREADY_IN_USE, "Can't open file while another file from path '" + file->get_path_absolute() + "' is open.");
|
||||
ERR_FAIL_COND_V(p_key.size() != 32, ERR_INVALID_PARAMETER);
|
||||
|
||||
pos = 0;
|
||||
|
@ -159,7 +159,7 @@ void FileAccessEncrypted::close() {
|
|||
file->store_buffer(compressed.ptr(), compressed.size());
|
||||
file->close();
|
||||
memdelete(file);
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
data.clear();
|
||||
|
||||
} else {
|
||||
|
@ -167,13 +167,13 @@ void FileAccessEncrypted::close() {
|
|||
file->close();
|
||||
memdelete(file);
|
||||
data.clear();
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
bool FileAccessEncrypted::is_open() const {
|
||||
|
||||
return file != NULL;
|
||||
return file != nullptr;
|
||||
}
|
||||
|
||||
String FileAccessEncrypted::get_path() const {
|
||||
|
@ -319,7 +319,7 @@ Error FileAccessEncrypted::_set_unix_permissions(const String &p_file, uint32_t
|
|||
|
||||
FileAccessEncrypted::FileAccessEncrypted() {
|
||||
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
pos = 0;
|
||||
eofed = false;
|
||||
mode = MODE_MAX;
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
#include "core/os/dir_access.h"
|
||||
#include "core/project_settings.h"
|
||||
|
||||
static Map<String, Vector<uint8_t>> *files = NULL;
|
||||
static Map<String, Vector<uint8_t>> *files = nullptr;
|
||||
|
||||
void FileAccessMemory::register_file(String p_name, Vector<uint8_t> p_data) {
|
||||
|
||||
|
@ -71,7 +71,7 @@ bool FileAccessMemory::file_exists(const String &p_name) {
|
|||
String name = fix_path(p_name);
|
||||
//name = DirAccess::normalize_path(name);
|
||||
|
||||
return files && (files->find(name) != NULL);
|
||||
return files && (files->find(name) != nullptr);
|
||||
}
|
||||
|
||||
Error FileAccessMemory::open_custom(const uint8_t *p_data, int p_len) {
|
||||
|
@ -101,12 +101,12 @@ Error FileAccessMemory::_open(const String &p_path, int p_mode_flags) {
|
|||
|
||||
void FileAccessMemory::close() {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
}
|
||||
|
||||
bool FileAccessMemory::is_open() const {
|
||||
|
||||
return data != NULL;
|
||||
return data != nullptr;
|
||||
}
|
||||
|
||||
void FileAccessMemory::seek(size_t p_position) {
|
||||
|
@ -196,5 +196,5 @@ void FileAccessMemory::store_buffer(const uint8_t *p_src, int p_length) {
|
|||
|
||||
FileAccessMemory::FileAccessMemory() {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
}
|
||||
|
|
|
@ -114,7 +114,7 @@ void FileAccessNetworkClient::_thread_func() {
|
|||
int response = get_32();
|
||||
DEBUG_PRINT("GET RESPONSE: " + itos(response));
|
||||
|
||||
FileAccessNetwork *fa = NULL;
|
||||
FileAccessNetwork *fa = nullptr;
|
||||
|
||||
if (response != FileAccessNetwork::RESPONSE_DATA) {
|
||||
if (!accesses.has(id)) {
|
||||
|
@ -219,11 +219,11 @@ Error FileAccessNetworkClient::connect(const String &p_host, int p_port, const S
|
|||
return OK;
|
||||
}
|
||||
|
||||
FileAccessNetworkClient *FileAccessNetworkClient::singleton = NULL;
|
||||
FileAccessNetworkClient *FileAccessNetworkClient::singleton = nullptr;
|
||||
|
||||
FileAccessNetworkClient::FileAccessNetworkClient() {
|
||||
|
||||
thread = NULL;
|
||||
thread = nullptr;
|
||||
quit = false;
|
||||
singleton = this;
|
||||
last_id = 0;
|
||||
|
@ -295,7 +295,7 @@ Error FileAccessNetwork::_open(const String &p_path, int p_mode_flags) {
|
|||
pos = 0;
|
||||
eof_flag = false;
|
||||
last_page = -1;
|
||||
last_page_buff = NULL;
|
||||
last_page_buff = nullptr;
|
||||
|
||||
//buffers.clear();
|
||||
nc->unlock_mutex();
|
||||
|
|
|
@ -98,18 +98,18 @@ void PackedData::add_path(const String &pkg_path, const String &path, uint64_t o
|
|||
|
||||
void PackedData::add_pack_source(PackSource *p_source) {
|
||||
|
||||
if (p_source != NULL) {
|
||||
if (p_source != nullptr) {
|
||||
sources.push_back(p_source);
|
||||
}
|
||||
};
|
||||
|
||||
PackedData *PackedData::singleton = NULL;
|
||||
PackedData *PackedData::singleton = nullptr;
|
||||
|
||||
PackedData::PackedData() {
|
||||
|
||||
singleton = this;
|
||||
root = memnew(PackedDir);
|
||||
root->parent = NULL;
|
||||
root->parent = nullptr;
|
||||
disabled = false;
|
||||
|
||||
add_pack_source(memnew(PackedSourcePCK));
|
||||
|
|
|
@ -185,9 +185,9 @@ FileAccess *PackedData::try_open_path(const String &p_path) {
|
|||
PathMD5 pmd5(p_path.md5_buffer());
|
||||
Map<PathMD5, PackedFile>::Element *E = files.find(pmd5);
|
||||
if (!E)
|
||||
return NULL; //not found
|
||||
return nullptr; //not found
|
||||
if (E->get().offset == 0)
|
||||
return NULL; //was erased
|
||||
return nullptr; //was erased
|
||||
|
||||
return E->get().src->get_file(p_path, &E->get());
|
||||
}
|
||||
|
|
|
@ -35,20 +35,20 @@
|
|||
#include "core/os/copymem.h"
|
||||
#include "core/os/file_access.h"
|
||||
|
||||
ZipArchive *ZipArchive::instance = NULL;
|
||||
ZipArchive *ZipArchive::instance = nullptr;
|
||||
|
||||
extern "C" {
|
||||
|
||||
static void *godot_open(void *data, const char *p_fname, int mode) {
|
||||
|
||||
if (mode & ZLIB_FILEFUNC_MODE_WRITE) {
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
FileAccess *f = (FileAccess *)data;
|
||||
f->open(p_fname, FileAccess::READ);
|
||||
|
||||
return f->is_open() ? data : NULL;
|
||||
return f->is_open() ? data : nullptr;
|
||||
}
|
||||
|
||||
static uLong godot_read(void *data, void *fdata, void *buf, uLong size) {
|
||||
|
@ -126,11 +126,11 @@ void ZipArchive::close_handle(unzFile p_file) const {
|
|||
|
||||
unzFile ZipArchive::get_file_handle(String p_file) const {
|
||||
|
||||
ERR_FAIL_COND_V_MSG(!file_exists(p_file), NULL, "File '" + p_file + " doesn't exist.");
|
||||
ERR_FAIL_COND_V_MSG(!file_exists(p_file), nullptr, "File '" + p_file + " doesn't exist.");
|
||||
File file = files[p_file];
|
||||
|
||||
FileAccess *f = FileAccess::open(packages[file.package].filename, FileAccess::READ);
|
||||
ERR_FAIL_COND_V_MSG(!f, NULL, "Cannot open file '" + packages[file.package].filename + "'.");
|
||||
ERR_FAIL_COND_V_MSG(!f, nullptr, "Cannot open file '" + packages[file.package].filename + "'.");
|
||||
|
||||
zlib_filefunc_def io;
|
||||
zeromem(&io, sizeof(io));
|
||||
|
@ -149,12 +149,12 @@ unzFile ZipArchive::get_file_handle(String p_file) const {
|
|||
io.free_mem = godot_free;
|
||||
|
||||
unzFile pkg = unzOpen2(packages[file.package].filename.utf8().get_data(), &io);
|
||||
ERR_FAIL_COND_V(!pkg, NULL);
|
||||
ERR_FAIL_COND_V(!pkg, nullptr);
|
||||
int unz_err = unzGoToFilePos(pkg, &file.file_pos);
|
||||
if (unz_err != UNZ_OK || unzOpenCurrentFile(pkg) != UNZ_OK) {
|
||||
|
||||
unzClose(pkg);
|
||||
ERR_FAIL_V(NULL);
|
||||
ERR_FAIL_V(nullptr);
|
||||
}
|
||||
|
||||
return pkg;
|
||||
|
@ -199,7 +199,7 @@ bool ZipArchive::try_open_pack(const String &p_path, bool p_replace_files) {
|
|||
char filename_inzip[256];
|
||||
|
||||
unz_file_info64 file_info;
|
||||
err = unzGetCurrentFileInfo64(zfile, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0);
|
||||
err = unzGetCurrentFileInfo64(zfile, &file_info, filename_inzip, sizeof(filename_inzip), nullptr, 0, nullptr, 0);
|
||||
ERR_CONTINUE(err != UNZ_OK);
|
||||
|
||||
File f;
|
||||
|
@ -233,7 +233,7 @@ FileAccess *ZipArchive::get_file(const String &p_path, PackedData::PackedFile *p
|
|||
|
||||
ZipArchive *ZipArchive::get_singleton() {
|
||||
|
||||
if (instance == NULL) {
|
||||
if (instance == nullptr) {
|
||||
instance = memnew(ZipArchive);
|
||||
}
|
||||
|
||||
|
@ -268,7 +268,7 @@ Error FileAccessZip::_open(const String &p_path, int p_mode_flags) {
|
|||
zfile = arch->get_file_handle(p_path);
|
||||
ERR_FAIL_COND_V(!zfile, FAILED);
|
||||
|
||||
int err = unzGetCurrentFileInfo64(zfile, &file_info, NULL, 0, NULL, 0, NULL, 0);
|
||||
int err = unzGetCurrentFileInfo64(zfile, &file_info, nullptr, 0, nullptr, 0, nullptr, 0);
|
||||
ERR_FAIL_COND_V(err != UNZ_OK, FAILED);
|
||||
|
||||
return OK;
|
||||
|
@ -282,12 +282,12 @@ void FileAccessZip::close() {
|
|||
ZipArchive *arch = ZipArchive::get_singleton();
|
||||
ERR_FAIL_COND(!arch);
|
||||
arch->close_handle(zfile);
|
||||
zfile = NULL;
|
||||
zfile = nullptr;
|
||||
}
|
||||
|
||||
bool FileAccessZip::is_open() const {
|
||||
|
||||
return zfile != NULL;
|
||||
return zfile != nullptr;
|
||||
}
|
||||
|
||||
void FileAccessZip::seek(size_t p_position) {
|
||||
|
@ -370,7 +370,7 @@ bool FileAccessZip::file_exists(const String &p_name) {
|
|||
}
|
||||
|
||||
FileAccessZip::FileAccessZip(const String &p_path, const PackedData::PackedFile &p_file) :
|
||||
zfile(NULL) {
|
||||
zfile(nullptr) {
|
||||
_open(p_path, FileAccess::READ);
|
||||
}
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ ImageFormatLoader *ImageLoader::recognize(const String &p_extension) {
|
|||
return loader[i];
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Vector<ImageFormatLoader *> ImageLoader::loader;
|
||||
|
|
|
@ -59,7 +59,7 @@ class ImageLoader {
|
|||
|
||||
protected:
|
||||
public:
|
||||
static Error load_image(String p_file, Ref<Image> p_image, FileAccess *p_custom = NULL, bool p_force_linear = false, float p_scale = 1.0);
|
||||
static Error load_image(String p_file, Ref<Image> p_image, FileAccess *p_custom = nullptr, bool p_force_linear = false, float p_scale = 1.0);
|
||||
static void get_recognized_extensions(List<String> *p_extensions);
|
||||
static ImageFormatLoader *recognize(const String &p_extension);
|
||||
|
||||
|
@ -73,7 +73,7 @@ public:
|
|||
|
||||
class ResourceFormatLoaderImage : public ResourceFormatLoader {
|
||||
public:
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual bool handles_type(const String &p_type) const;
|
||||
virtual String get_resource_type(const String &p_path) const;
|
||||
|
|
|
@ -280,19 +280,19 @@ void IP::_bind_methods() {
|
|||
BIND_ENUM_CONSTANT(TYPE_ANY);
|
||||
}
|
||||
|
||||
IP *IP::singleton = NULL;
|
||||
IP *IP::singleton = nullptr;
|
||||
|
||||
IP *IP::get_singleton() {
|
||||
|
||||
return singleton;
|
||||
}
|
||||
|
||||
IP *(*IP::_create)() = NULL;
|
||||
IP *(*IP::_create)() = nullptr;
|
||||
|
||||
IP *IP::create() {
|
||||
|
||||
ERR_FAIL_COND_V_MSG(singleton, NULL, "IP singleton already exist.");
|
||||
ERR_FAIL_COND_V(!_create, NULL);
|
||||
ERR_FAIL_COND_V_MSG(singleton, nullptr, "IP singleton already exist.");
|
||||
ERR_FAIL_COND_V(!_create, nullptr);
|
||||
return _create();
|
||||
}
|
||||
|
||||
|
@ -307,7 +307,7 @@ IP::IP() {
|
|||
|
||||
resolver->thread = Thread::create(_IP_ResolverPrivate::_thread_function, resolver);
|
||||
#else
|
||||
resolver->thread = NULL;
|
||||
resolver->thread = nullptr;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ Logger::~Logger() {}
|
|||
void RotatedFileLogger::close_file() {
|
||||
if (file) {
|
||||
memdelete(file);
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -182,7 +182,7 @@ void RotatedFileLogger::rotate_file() {
|
|||
RotatedFileLogger::RotatedFileLogger(const String &p_base_path, int p_max_files) :
|
||||
base_path(p_base_path.simplify_path()),
|
||||
max_files(p_max_files > 0 ? p_max_files : 1),
|
||||
file(NULL) {
|
||||
file(nullptr) {
|
||||
rotate_file();
|
||||
}
|
||||
|
||||
|
|
|
@ -439,7 +439,7 @@ Error decode_variant(Variant &r_variant, const uint8_t *p_buffer, int p_len, int
|
|||
(*r_len) += 8;
|
||||
|
||||
if (val.is_null()) {
|
||||
r_variant = (Object *)NULL;
|
||||
r_variant = (Object *)nullptr;
|
||||
} else {
|
||||
Ref<EncodedObjectAsID> obj_as_id;
|
||||
obj_as_id.instance();
|
||||
|
@ -457,7 +457,7 @@ Error decode_variant(Variant &r_variant, const uint8_t *p_buffer, int p_len, int
|
|||
return err;
|
||||
|
||||
if (str == String()) {
|
||||
r_variant = (Object *)NULL;
|
||||
r_variant = (Object *)nullptr;
|
||||
} else {
|
||||
|
||||
Object *obj = ClassDB::instance(str);
|
||||
|
@ -917,7 +917,7 @@ Error encode_variant(const Variant &p_variant, uint8_t *r_buffer, int &r_len, bo
|
|||
// Test for potential wrong values sent by the debugger when it breaks.
|
||||
Object *obj = p_variant.get_validated_object();
|
||||
if (!obj) {
|
||||
// Object is invalid, send a NULL instead.
|
||||
// Object is invalid, send a nullptr instead.
|
||||
if (buf) {
|
||||
encode_uint32(Variant::NIL, buf);
|
||||
}
|
||||
|
|
|
@ -199,7 +199,7 @@ public:
|
|||
EncodedObjectAsID();
|
||||
};
|
||||
|
||||
Error decode_variant(Variant &r_variant, const uint8_t *p_buffer, int p_len, int *r_len = NULL, bool p_allow_objects = false);
|
||||
Error decode_variant(Variant &r_variant, const uint8_t *p_buffer, int p_len, int *r_len = nullptr, bool p_allow_objects = false);
|
||||
Error encode_variant(const Variant &p_variant, uint8_t *r_buffer, int &r_len, bool p_full_objects = false);
|
||||
|
||||
#endif // MARSHALLS_H
|
||||
|
|
|
@ -207,7 +207,7 @@ int get_packet_len(uint32_t p_node_target, int p_packet_len) {
|
|||
|
||||
void MultiplayerAPI::_process_packet(int p_from, const uint8_t *p_packet, int p_packet_len) {
|
||||
|
||||
ERR_FAIL_COND_MSG(root_node == NULL, "Multiplayer root node was not initialized. If you are using custom multiplayer, remember to set the root node via MultiplayerAPI.set_root_node before using it.");
|
||||
ERR_FAIL_COND_MSG(root_node == nullptr, "Multiplayer root node was not initialized. If you are using custom multiplayer, remember to set the root node via MultiplayerAPI.set_root_node before using it.");
|
||||
ERR_FAIL_COND_MSG(p_packet_len < 1, "Invalid packet received. Size too small.");
|
||||
|
||||
#ifdef DEBUG_ENABLED
|
||||
|
@ -285,7 +285,7 @@ void MultiplayerAPI::_process_packet(int p_from, const uint8_t *p_packet, int p_
|
|||
}
|
||||
|
||||
Node *node = _process_get_node(p_from, p_packet, node_target, p_packet_len);
|
||||
ERR_FAIL_COND_MSG(node == NULL, "Invalid packet received. Requested node was not found.");
|
||||
ERR_FAIL_COND_MSG(node == nullptr, "Invalid packet received. Requested node was not found.");
|
||||
|
||||
uint16_t name_id = 0;
|
||||
switch (name_id_compression) {
|
||||
|
@ -321,14 +321,14 @@ void MultiplayerAPI::_process_packet(int p_from, const uint8_t *p_packet, int p_
|
|||
|
||||
Node *MultiplayerAPI::_process_get_node(int p_from, const uint8_t *p_packet, uint32_t p_node_target, int p_packet_len) {
|
||||
|
||||
Node *node = NULL;
|
||||
Node *node = nullptr;
|
||||
|
||||
if (p_node_target & 0x80000000) {
|
||||
// Use full path (not cached yet).
|
||||
|
||||
int ofs = p_node_target & 0x7FFFFFFF;
|
||||
|
||||
ERR_FAIL_COND_V_MSG(ofs >= p_packet_len, NULL, "Invalid packet received. Size smaller than declared.");
|
||||
ERR_FAIL_COND_V_MSG(ofs >= p_packet_len, nullptr, "Invalid packet received. Size smaller than declared.");
|
||||
|
||||
String paths;
|
||||
paths.parse_utf8((const char *)&p_packet[ofs], p_packet_len - ofs);
|
||||
|
@ -344,10 +344,10 @@ Node *MultiplayerAPI::_process_get_node(int p_from, const uint8_t *p_packet, uin
|
|||
int id = p_node_target;
|
||||
|
||||
Map<int, PathGetCache>::Element *E = path_get_cache.find(p_from);
|
||||
ERR_FAIL_COND_V_MSG(!E, NULL, "Invalid packet received. Requests invalid peer cache.");
|
||||
ERR_FAIL_COND_V_MSG(!E, nullptr, "Invalid packet received. Requests invalid peer cache.");
|
||||
|
||||
Map<int, PathGetCache::NodeInfo>::Element *F = E->get().nodes.find(id);
|
||||
ERR_FAIL_COND_V_MSG(!F, NULL, "Invalid packet received. Unabled to find requested cached node.");
|
||||
ERR_FAIL_COND_V_MSG(!F, nullptr, "Invalid packet received. Unabled to find requested cached node.");
|
||||
|
||||
PathGetCache::NodeInfo *ni = &F->get();
|
||||
// Do proper caching later.
|
||||
|
@ -456,7 +456,7 @@ void MultiplayerAPI::_process_rset(Node *p_node, const uint16_t p_rpc_property_i
|
|||
#endif
|
||||
|
||||
Variant value;
|
||||
Error err = _decode_and_decompress_variant(value, &p_packet[p_offset], p_packet_len - p_offset, NULL);
|
||||
Error err = _decode_and_decompress_variant(value, &p_packet[p_offset], p_packet_len - p_offset, nullptr);
|
||||
|
||||
ERR_FAIL_COND_MSG(err != OK, "Invalid packet received. Unable to decode RSET value.");
|
||||
|
||||
|
@ -491,7 +491,7 @@ void MultiplayerAPI::_process_simplify_path(int p_from, const uint8_t *p_packet,
|
|||
}
|
||||
|
||||
Node *node = root_node->get_node(path);
|
||||
ERR_FAIL_COND(node == NULL);
|
||||
ERR_FAIL_COND(node == nullptr);
|
||||
const bool valid_rpc_checksum = node->get_rpc_md5() == methods_md5;
|
||||
if (valid_rpc_checksum == false) {
|
||||
ERR_PRINT("The rpc node checksum failed. Make sure to have the same methods on both nodes. Node path: " + path);
|
||||
|
@ -504,7 +504,7 @@ void MultiplayerAPI::_process_simplify_path(int p_from, const uint8_t *p_packet,
|
|||
|
||||
// Encode path to send ack.
|
||||
CharString pname = String(path).utf8();
|
||||
int len = encode_cstring(pname.get_data(), NULL);
|
||||
int len = encode_cstring(pname.get_data(), nullptr);
|
||||
|
||||
Vector<uint8_t> packet;
|
||||
|
||||
|
@ -572,7 +572,7 @@ bool MultiplayerAPI::_send_confirm_path(Node *p_node, NodePath p_path, PathSentC
|
|||
|
||||
// Encode function name.
|
||||
const CharString path = String(p_path).utf8();
|
||||
const int path_len = encode_cstring(path.get_data(), NULL);
|
||||
const int path_len = encode_cstring(path.get_data(), nullptr);
|
||||
|
||||
// Extract MD5 from rpc methods list.
|
||||
const String methods_md5 = p_node->get_rpc_md5();
|
||||
|
@ -862,7 +862,7 @@ void MultiplayerAPI::_send_rpc(Node *p_from, int p_to, bool p_unreliable, bool p
|
|||
|
||||
// Set argument.
|
||||
int len(0);
|
||||
Error err = _encode_and_compress_variant(*p_arg[0], NULL, len);
|
||||
Error err = _encode_and_compress_variant(*p_arg[0], nullptr, len);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Unable to encode RSET value. THIS IS LIKELY A BUG IN THE ENGINE!");
|
||||
MAKE_ROOM(ofs + len);
|
||||
_encode_and_compress_variant(*p_arg[0], &(packet_cache.write[ofs]), len);
|
||||
|
@ -907,7 +907,7 @@ void MultiplayerAPI::_send_rpc(Node *p_from, int p_to, bool p_unreliable, bool p
|
|||
ofs += 1;
|
||||
for (int i = 0; i < p_argcount; i++) {
|
||||
int len(0);
|
||||
Error err = _encode_and_compress_variant(*p_arg[i], NULL, len);
|
||||
Error err = _encode_and_compress_variant(*p_arg[i], nullptr, len);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Unable to encode RPC argument. THIS IS LIKELY A BUG IN THE ENGINE!");
|
||||
MAKE_ROOM(ofs + len);
|
||||
_encode_and_compress_variant(*p_arg[i], &(packet_cache.write[ofs]), len);
|
||||
|
@ -943,7 +943,7 @@ void MultiplayerAPI::_send_rpc(Node *p_from, int p_to, bool p_unreliable, bool p
|
|||
|
||||
// Append path at the end, since we will need it for some packets.
|
||||
CharString pname = String(from_path).utf8();
|
||||
int path_len = encode_cstring(pname.get_data(), NULL);
|
||||
int path_len = encode_cstring(pname.get_data(), nullptr);
|
||||
MAKE_ROOM(ofs + path_len);
|
||||
encode_cstring(pname.get_data(), &(packet_cache.write[ofs]));
|
||||
|
||||
|
@ -1262,7 +1262,7 @@ void MultiplayerAPI::_bind_methods() {
|
|||
MultiplayerAPI::MultiplayerAPI() :
|
||||
allow_object_decoding(false) {
|
||||
rpc_sender_id = 0;
|
||||
root_node = NULL;
|
||||
root_node = nullptr;
|
||||
clear();
|
||||
}
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
#include "net_socket.h"
|
||||
|
||||
NetSocket *(*NetSocket::_create)() = NULL;
|
||||
NetSocket *(*NetSocket::_create)() = nullptr;
|
||||
|
||||
NetSocket *NetSocket::create() {
|
||||
|
||||
|
@ -38,5 +38,5 @@ NetSocket *NetSocket::create() {
|
|||
return _create();
|
||||
|
||||
ERR_PRINT("Unable to create network socket, platform not supported");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
|
|
@ -90,13 +90,13 @@ Error PacketPeer::get_var(Variant &r_variant, bool p_allow_objects) {
|
|||
if (err)
|
||||
return err;
|
||||
|
||||
return decode_variant(r_variant, buffer, buffer_size, NULL, p_allow_objects);
|
||||
return decode_variant(r_variant, buffer, buffer_size, nullptr, p_allow_objects);
|
||||
}
|
||||
|
||||
Error PacketPeer::put_var(const Variant &p_packet, bool p_full_objects) {
|
||||
|
||||
int len;
|
||||
Error err = encode_variant(p_packet, NULL, len, p_full_objects); // compute len first
|
||||
Error err = encode_variant(p_packet, nullptr, len, p_full_objects); // compute len first
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "core/os/file_access.h"
|
||||
#include "core/project_settings.h"
|
||||
|
||||
PacketPeerDTLS *(*PacketPeerDTLS::_create)() = NULL;
|
||||
PacketPeerDTLS *(*PacketPeerDTLS::_create)() = nullptr;
|
||||
bool PacketPeerDTLS::available = false;
|
||||
|
||||
PacketPeerDTLS *PacketPeerDTLS::create() {
|
||||
|
|
|
@ -63,7 +63,7 @@ void PCKPacker::_bind_methods() {
|
|||
|
||||
Error PCKPacker::pck_start(const String &p_file, int p_alignment) {
|
||||
|
||||
if (file != NULL) {
|
||||
if (file != nullptr) {
|
||||
memdelete(file);
|
||||
}
|
||||
|
||||
|
@ -182,12 +182,12 @@ Error PCKPacker::flush(bool p_verbose) {
|
|||
|
||||
PCKPacker::PCKPacker() {
|
||||
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
};
|
||||
|
||||
PCKPacker::~PCKPacker() {
|
||||
if (file != NULL) {
|
||||
if (file != nullptr) {
|
||||
memdelete(file);
|
||||
};
|
||||
file = NULL;
|
||||
file = nullptr;
|
||||
};
|
||||
|
|
|
@ -1009,7 +1009,7 @@ String ResourceLoaderBinary::recognize(FileAccess *p_f) {
|
|||
ResourceLoaderBinary::ResourceLoaderBinary() :
|
||||
translation_remapped(false),
|
||||
ver_format(0),
|
||||
f(NULL),
|
||||
f(nullptr),
|
||||
importmd_ofs(0),
|
||||
error(OK) {
|
||||
|
||||
|
@ -1107,7 +1107,7 @@ Error ResourceFormatLoaderBinary::rename_dependencies(const String &p_path, cons
|
|||
FileAccess *f = FileAccess::open(p_path, FileAccess::READ);
|
||||
ERR_FAIL_COND_V_MSG(!f, ERR_CANT_OPEN, "Cannot open file '" + p_path + "'.");
|
||||
|
||||
FileAccess *fw = NULL; //=FileAccess::open(p_path+".depren");
|
||||
FileAccess *fw = nullptr; //=FileAccess::open(p_path+".depren");
|
||||
|
||||
String local_path = p_path.get_base_dir();
|
||||
|
||||
|
@ -2095,7 +2095,7 @@ void ResourceFormatSaverBinary::get_recognized_extensions(const RES &p_resource,
|
|||
p_extensions->push_back("res");
|
||||
}
|
||||
|
||||
ResourceFormatSaverBinary *ResourceFormatSaverBinary::singleton = NULL;
|
||||
ResourceFormatSaverBinary *ResourceFormatSaverBinary::singleton = nullptr;
|
||||
|
||||
ResourceFormatSaverBinary::ResourceFormatSaverBinary() {
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ public:
|
|||
|
||||
class ResourceFormatLoaderBinary : public ResourceFormatLoader {
|
||||
public:
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual void get_recognized_extensions_for_type(const String &p_type, List<String> *p_extensions) const;
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual bool handles_type(const String &p_type) const;
|
||||
|
|
|
@ -69,7 +69,7 @@ Error ResourceFormatImporter::_get_path_and_type(const String &p_path, PathAndTy
|
|||
next_tag.fields.clear();
|
||||
next_tag.name = String();
|
||||
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, NULL, true);
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, nullptr, true);
|
||||
if (err == ERR_FILE_EOF) {
|
||||
memdelete(f);
|
||||
return OK;
|
||||
|
@ -274,7 +274,7 @@ void ResourceFormatImporter::get_internal_resource_path_list(const String &p_pat
|
|||
next_tag.fields.clear();
|
||||
next_tag.name = String();
|
||||
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, NULL, true);
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, nullptr, true);
|
||||
if (err == ERR_FILE_EOF) {
|
||||
memdelete(f);
|
||||
return;
|
||||
|
@ -434,7 +434,7 @@ String ResourceFormatImporter::get_import_settings_hash() const {
|
|||
return hash.md5_text();
|
||||
}
|
||||
|
||||
ResourceFormatImporter *ResourceFormatImporter::singleton = NULL;
|
||||
ResourceFormatImporter *ResourceFormatImporter::singleton = nullptr;
|
||||
|
||||
ResourceFormatImporter::ResourceFormatImporter() {
|
||||
singleton = this;
|
||||
|
|
|
@ -45,7 +45,7 @@ class ResourceFormatImporter : public ResourceFormatLoader {
|
|||
Variant metadata;
|
||||
};
|
||||
|
||||
Error _get_path_and_type(const String &p_path, PathAndType &r_path_and_type, bool *r_valid = NULL) const;
|
||||
Error _get_path_and_type(const String &p_path, PathAndType &r_path_and_type, bool *r_valid = nullptr) const;
|
||||
|
||||
static ResourceFormatImporter *singleton;
|
||||
|
||||
|
@ -58,7 +58,7 @@ class ResourceFormatImporter : public ResourceFormatLoader {
|
|||
|
||||
public:
|
||||
static ResourceFormatImporter *get_singleton() { return singleton; }
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual void get_recognized_extensions_for_type(const String &p_type, List<String> *p_extensions) const;
|
||||
virtual bool recognize_path(const String &p_path, const String &p_for_type = String()) const;
|
||||
|
@ -123,7 +123,7 @@ public:
|
|||
virtual bool get_option_visibility(const String &p_option, const Map<StringName, Variant> &p_options) const = 0;
|
||||
virtual String get_option_group_file() const { return String(); }
|
||||
|
||||
virtual Error import(const String &p_source_file, const String &p_save_path, const Map<StringName, Variant> &p_options, List<String> *r_platform_variants, List<String> *r_gen_files = NULL, Variant *r_metadata = NULL) = 0;
|
||||
virtual Error import(const String &p_source_file, const String &p_save_path, const Map<StringName, Variant> &p_options, List<String> *r_platform_variants, List<String> *r_gen_files = nullptr, Variant *r_metadata = nullptr) = 0;
|
||||
|
||||
virtual Error import_group_file(const String &p_group_file, const Map<String, Map<StringName, Variant>> &p_source_file_options, const Map<String, String> &p_base_paths) { return ERR_UNAVAILABLE; }
|
||||
virtual bool are_import_settings_valid(const String &p_path) const { return true; }
|
||||
|
|
|
@ -936,7 +936,7 @@ String ResourceLoader::_path_remap(const String &p_path, bool *r_translation_rem
|
|||
next_tag.fields.clear();
|
||||
next_tag.name = String();
|
||||
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, NULL, true);
|
||||
err = VariantParser::parse_tag_assign_eof(&stream, lines, error_text, next_tag, assign, value, nullptr, true);
|
||||
if (err == ERR_FILE_EOF) {
|
||||
break;
|
||||
} else if (err != OK) {
|
||||
|
@ -1048,7 +1048,7 @@ void ResourceLoader::set_load_callback(ResourceLoadedCallback p_callback) {
|
|||
_loaded_callback = p_callback;
|
||||
}
|
||||
|
||||
ResourceLoadedCallback ResourceLoader::_loaded_callback = NULL;
|
||||
ResourceLoadedCallback ResourceLoader::_loaded_callback = nullptr;
|
||||
|
||||
Ref<ResourceFormatLoader> ResourceLoader::_find_custom_resource_format_loader(String path) {
|
||||
for (int i = 0; i < loader_count; ++i) {
|
||||
|
@ -1075,7 +1075,7 @@ bool ResourceLoader::add_custom_resource_format_loader(String script_path) {
|
|||
|
||||
Object *obj = ClassDB::instance(ibt);
|
||||
|
||||
ERR_FAIL_COND_V_MSG(obj == NULL, false, "Cannot instance script as custom resource loader, expected 'ResourceFormatLoader' inheritance, got: " + String(ibt) + ".");
|
||||
ERR_FAIL_COND_V_MSG(obj == nullptr, false, "Cannot instance script as custom resource loader, expected 'ResourceFormatLoader' inheritance, got: " + String(ibt) + ".");
|
||||
|
||||
ResourceFormatLoader *crl = Object::cast_to<ResourceFormatLoader>(obj);
|
||||
crl->set_script(s);
|
||||
|
@ -1140,11 +1140,11 @@ void ResourceLoader::finalize() {
|
|||
memdelete(thread_load_semaphore);
|
||||
}
|
||||
|
||||
ResourceLoadErrorNotify ResourceLoader::err_notify = NULL;
|
||||
void *ResourceLoader::err_notify_ud = NULL;
|
||||
ResourceLoadErrorNotify ResourceLoader::err_notify = nullptr;
|
||||
void *ResourceLoader::err_notify_ud = nullptr;
|
||||
|
||||
DependencyErrorNotify ResourceLoader::dep_err_notify = NULL;
|
||||
void *ResourceLoader::dep_err_notify_ud = NULL;
|
||||
DependencyErrorNotify ResourceLoader::dep_err_notify = nullptr;
|
||||
void *ResourceLoader::dep_err_notify_ud = nullptr;
|
||||
|
||||
bool ResourceLoader::abort_on_missing_resource = true;
|
||||
bool ResourceLoader::timestamp_on_load = false;
|
||||
|
@ -1162,4 +1162,4 @@ SelfList<Resource>::List ResourceLoader::remapped_list;
|
|||
HashMap<String, Vector<String>> ResourceLoader::translation_remaps;
|
||||
HashMap<String, String> ResourceLoader::path_remaps;
|
||||
|
||||
ResourceLoaderImport ResourceLoader::import = NULL;
|
||||
ResourceLoaderImport ResourceLoader::import = nullptr;
|
||||
|
|
|
@ -43,7 +43,7 @@ protected:
|
|||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual bool exists(const String &p_path) const;
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual void get_recognized_extensions_for_type(const String &p_type, List<String> *p_extensions) const;
|
||||
|
@ -93,7 +93,7 @@ private:
|
|||
static HashMap<String, Vector<String>> translation_remaps;
|
||||
static HashMap<String, String> path_remaps;
|
||||
|
||||
static String _path_remap(const String &p_path, bool *r_translation_remapped = NULL);
|
||||
static String _path_remap(const String &p_path, bool *r_translation_remapped = nullptr);
|
||||
friend class Resource;
|
||||
|
||||
static SelfList<Resource>::List remapped_list;
|
||||
|
@ -140,9 +140,9 @@ private:
|
|||
public:
|
||||
static Error load_threaded_request(const String &p_path, const String &p_type_hint = "", bool p_use_sub_threads = false, const String &p_source_resource = String());
|
||||
static ThreadLoadStatus load_threaded_get_status(const String &p_path, float *r_progress = nullptr);
|
||||
static RES load_threaded_get(const String &p_path, Error *r_error = NULL);
|
||||
static RES load_threaded_get(const String &p_path, Error *r_error = nullptr);
|
||||
|
||||
static RES load(const String &p_path, const String &p_type_hint = "", bool p_no_cache = false, Error *r_error = NULL);
|
||||
static RES load(const String &p_path, const String &p_type_hint = "", bool p_no_cache = false, Error *r_error = nullptr);
|
||||
static bool exists(const String &p_path, const String &p_type_hint = "");
|
||||
|
||||
static void get_recognized_extensions_for_type(const String &p_type, List<String> *p_extensions);
|
||||
|
|
|
@ -38,7 +38,7 @@ Ref<ResourceFormatSaver> ResourceSaver::saver[MAX_SAVERS];
|
|||
|
||||
int ResourceSaver::saver_count = 0;
|
||||
bool ResourceSaver::timestamp_on_save = false;
|
||||
ResourceSavedCallback ResourceSaver::save_callback = 0;
|
||||
ResourceSavedCallback ResourceSaver::save_callback = nullptr;
|
||||
|
||||
Error ResourceFormatSaver::save(const String &p_path, const RES &p_resource, uint32_t p_flags) {
|
||||
|
||||
|
@ -218,7 +218,7 @@ bool ResourceSaver::add_custom_resource_format_saver(String script_path) {
|
|||
|
||||
Object *obj = ClassDB::instance(ibt);
|
||||
|
||||
ERR_FAIL_COND_V_MSG(obj == NULL, false, "Cannot instance script as custom resource saver, expected 'ResourceFormatSaver' inheritance, got: " + String(ibt) + ".");
|
||||
ERR_FAIL_COND_V_MSG(obj == nullptr, false, "Cannot instance script as custom resource saver, expected 'ResourceFormatSaver' inheritance, got: " + String(ibt) + ".");
|
||||
|
||||
ResourceFormatSaver *crl = Object::cast_to<ResourceFormatSaver>(obj);
|
||||
crl->set_script(s);
|
||||
|
|
|
@ -224,7 +224,7 @@ void StreamPeer::put_var(const Variant &p_variant, bool p_full_objects) {
|
|||
|
||||
int len = 0;
|
||||
Vector<uint8_t> buf;
|
||||
encode_variant(p_variant, NULL, len, p_full_objects);
|
||||
encode_variant(p_variant, nullptr, len, p_full_objects);
|
||||
buf.resize(len);
|
||||
put_32(len);
|
||||
encode_variant(p_variant, buf.ptrw(), len, p_full_objects);
|
||||
|
@ -368,7 +368,7 @@ Variant StreamPeer::get_var(bool p_allow_objects) {
|
|||
ERR_FAIL_COND_V(err != OK, Variant());
|
||||
|
||||
Variant ret;
|
||||
err = decode_variant(ret, var.ptr(), len, NULL, p_allow_objects);
|
||||
err = decode_variant(ret, var.ptr(), len, nullptr, p_allow_objects);
|
||||
ERR_FAIL_COND_V_MSG(err != OK, Variant(), "Error when trying to decode Variant.");
|
||||
|
||||
return ret;
|
||||
|
|
|
@ -32,13 +32,13 @@
|
|||
|
||||
#include "core/engine.h"
|
||||
|
||||
StreamPeerSSL *(*StreamPeerSSL::_create)() = NULL;
|
||||
StreamPeerSSL *(*StreamPeerSSL::_create)() = nullptr;
|
||||
|
||||
StreamPeerSSL *StreamPeerSSL::create() {
|
||||
|
||||
if (_create)
|
||||
return _create();
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool StreamPeerSSL::available = false;
|
||||
|
|
|
@ -37,8 +37,8 @@
|
|||
|
||||
class TranslationLoaderPO : public ResourceFormatLoader {
|
||||
public:
|
||||
static RES load_translation(FileAccess *f, Error *r_error = NULL);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = NULL, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
static RES load_translation(FileAccess *f, Error *r_error = nullptr);
|
||||
virtual RES load(const String &p_path, const String &p_original_path = "", Error *r_error = nullptr, bool p_use_sub_threads = false, float *r_progress = nullptr);
|
||||
virtual void get_recognized_extensions(List<String> *p_extensions) const;
|
||||
virtual bool handles_type(const String &p_type) const;
|
||||
virtual String get_resource_type(const String &p_path) const;
|
||||
|
|
|
@ -165,7 +165,7 @@ bool XMLParser::_parse_cdata() {
|
|||
return true;
|
||||
|
||||
char *cDataBegin = P;
|
||||
char *cDataEnd = 0;
|
||||
char *cDataEnd = nullptr;
|
||||
|
||||
// find end of CDATA
|
||||
while (*P && !cDataEnd) {
|
||||
|
@ -529,9 +529,9 @@ void XMLParser::close() {
|
|||
|
||||
if (data)
|
||||
memdelete_arr(data);
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
length = 0;
|
||||
P = NULL;
|
||||
P = nullptr;
|
||||
node_empty = false;
|
||||
node_type = NODE_NONE;
|
||||
node_offset = 0;
|
||||
|
@ -544,7 +544,7 @@ int XMLParser::get_current_line() const {
|
|||
|
||||
XMLParser::XMLParser() {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
close();
|
||||
special_characters.push_back("&");
|
||||
special_characters.push_back("<lt;");
|
||||
|
|
|
@ -47,7 +47,7 @@ void *zipio_open(void *data, const char *p_fname, int mode) {
|
|||
}
|
||||
|
||||
if (!f)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
return data;
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ int zipio_close(voidpf opaque, voidpf stream) {
|
|||
if (f) {
|
||||
f->close();
|
||||
memdelete(f);
|
||||
f = NULL;
|
||||
f = nullptr;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
32
core/list.h
32
core/list.h
|
@ -142,7 +142,7 @@ public:
|
|||
_FORCE_INLINE_ Element() {
|
||||
next_ptr = 0;
|
||||
prev_ptr = 0;
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -220,8 +220,8 @@ public:
|
|||
if (!_data) {
|
||||
|
||||
_data = memnew_allocator(_Data, A);
|
||||
_data->first = NULL;
|
||||
_data->last = NULL;
|
||||
_data->first = nullptr;
|
||||
_data->last = nullptr;
|
||||
_data->size_cache = 0;
|
||||
}
|
||||
|
||||
|
@ -261,8 +261,8 @@ public:
|
|||
if (!_data) {
|
||||
|
||||
_data = memnew_allocator(_Data, A);
|
||||
_data->first = NULL;
|
||||
_data->last = NULL;
|
||||
_data->first = nullptr;
|
||||
_data->last = nullptr;
|
||||
_data->size_cache = 0;
|
||||
}
|
||||
|
||||
|
@ -357,7 +357,7 @@ public:
|
|||
it = it->next();
|
||||
};
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -370,7 +370,7 @@ public:
|
|||
|
||||
if (_data->size_cache == 0) {
|
||||
memdelete_allocator<_Data, A>(_data);
|
||||
_data = NULL;
|
||||
_data = nullptr;
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
@ -498,7 +498,7 @@ public:
|
|||
|
||||
_data->last->next_ptr = p_I;
|
||||
p_I->prev_ptr = _data->last;
|
||||
p_I->next_ptr = NULL;
|
||||
p_I->next_ptr = nullptr;
|
||||
_data->last = p_I;
|
||||
}
|
||||
|
||||
|
@ -535,7 +535,7 @@ public:
|
|||
|
||||
_data->first->prev_ptr = p_I;
|
||||
p_I->next_ptr = _data->first;
|
||||
p_I->prev_ptr = NULL;
|
||||
p_I->prev_ptr = nullptr;
|
||||
_data->first = p_I;
|
||||
}
|
||||
|
||||
|
@ -595,7 +595,7 @@ public:
|
|||
|
||||
if (from != current) {
|
||||
|
||||
current->prev_ptr = NULL;
|
||||
current->prev_ptr = nullptr;
|
||||
current->next_ptr = from;
|
||||
|
||||
Element *find = from;
|
||||
|
@ -618,8 +618,8 @@ public:
|
|||
to = current;
|
||||
} else {
|
||||
|
||||
current->prev_ptr = NULL;
|
||||
current->next_ptr = NULL;
|
||||
current->prev_ptr = nullptr;
|
||||
current->next_ptr = nullptr;
|
||||
}
|
||||
|
||||
current = next;
|
||||
|
@ -661,12 +661,12 @@ public:
|
|||
sort.sort(aux_buffer, s);
|
||||
|
||||
_data->first = aux_buffer[0];
|
||||
aux_buffer[0]->prev_ptr = NULL;
|
||||
aux_buffer[0]->prev_ptr = nullptr;
|
||||
aux_buffer[0]->next_ptr = aux_buffer[1];
|
||||
|
||||
_data->last = aux_buffer[s - 1];
|
||||
aux_buffer[s - 1]->prev_ptr = aux_buffer[s - 2];
|
||||
aux_buffer[s - 1]->next_ptr = NULL;
|
||||
aux_buffer[s - 1]->next_ptr = nullptr;
|
||||
|
||||
for (int i = 1; i < s - 1; i++) {
|
||||
|
||||
|
@ -686,7 +686,7 @@ public:
|
|||
*/
|
||||
List(const List &p_list) {
|
||||
|
||||
_data = NULL;
|
||||
_data = nullptr;
|
||||
const Element *it = p_list.front();
|
||||
while (it) {
|
||||
|
||||
|
@ -696,7 +696,7 @@ public:
|
|||
}
|
||||
|
||||
List() {
|
||||
_data = NULL;
|
||||
_data = nullptr;
|
||||
};
|
||||
~List() {
|
||||
clear();
|
||||
|
|
44
core/map.h
44
core/map.h
|
@ -95,11 +95,11 @@ public:
|
|||
};
|
||||
Element() {
|
||||
color = RED;
|
||||
right = NULL;
|
||||
left = NULL;
|
||||
parent = NULL;
|
||||
_next = NULL;
|
||||
_prev = NULL;
|
||||
right = nullptr;
|
||||
left = nullptr;
|
||||
parent = nullptr;
|
||||
_next = nullptr;
|
||||
_prev = nullptr;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -118,7 +118,7 @@ private:
|
|||
#else
|
||||
_nil = (Element *)&_GlobalNilClass::_nil;
|
||||
#endif
|
||||
_root = NULL;
|
||||
_root = nullptr;
|
||||
size_cache = 0;
|
||||
}
|
||||
|
||||
|
@ -133,7 +133,7 @@ private:
|
|||
|
||||
if (_root) {
|
||||
memdelete_allocator<Element, A>(_root);
|
||||
_root = NULL;
|
||||
_root = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -205,7 +205,7 @@ private:
|
|||
}
|
||||
|
||||
if (node->parent == _data._root)
|
||||
return NULL; // No successor, as p_node = last node
|
||||
return nullptr; // No successor, as p_node = last node
|
||||
return node->parent;
|
||||
}
|
||||
}
|
||||
|
@ -227,7 +227,7 @@ private:
|
|||
}
|
||||
|
||||
if (node == _data._root)
|
||||
return NULL; // No predecessor, as p_node = first node
|
||||
return nullptr; // No predecessor, as p_node = first node
|
||||
return node->parent;
|
||||
}
|
||||
}
|
||||
|
@ -246,13 +246,13 @@ private:
|
|||
return node; // found
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Element *_find_closest(const K &p_key) const {
|
||||
|
||||
Element *node = _data._root->left;
|
||||
Element *prev = NULL;
|
||||
Element *prev = nullptr;
|
||||
C less;
|
||||
|
||||
while (node != _data._nil) {
|
||||
|
@ -266,8 +266,8 @@ private:
|
|||
return node; // found
|
||||
}
|
||||
|
||||
if (prev == NULL)
|
||||
return NULL; // tree empty
|
||||
if (prev == nullptr)
|
||||
return nullptr; // tree empty
|
||||
|
||||
if (less(p_key, prev->_key))
|
||||
prev = prev->_prev;
|
||||
|
@ -519,7 +519,7 @@ public:
|
|||
const Element *find(const K &p_key) const {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
const Element *res = _find(p_key);
|
||||
return res;
|
||||
|
@ -528,7 +528,7 @@ public:
|
|||
Element *find(const K &p_key) {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Element *res = _find(p_key);
|
||||
return res;
|
||||
|
@ -537,7 +537,7 @@ public:
|
|||
const Element *find_closest(const K &p_key) const {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
const Element *res = _find_closest(p_key);
|
||||
return res;
|
||||
|
@ -546,7 +546,7 @@ public:
|
|||
Element *find_closest(const K &p_key) {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Element *res = _find_closest(p_key);
|
||||
return res;
|
||||
|
@ -554,7 +554,7 @@ public:
|
|||
|
||||
bool has(const K &p_key) const {
|
||||
|
||||
return find(p_key) != NULL;
|
||||
return find(p_key) != nullptr;
|
||||
}
|
||||
|
||||
Element *insert(const K &p_key, const V &p_value) {
|
||||
|
@ -612,11 +612,11 @@ public:
|
|||
Element *front() const {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Element *e = _data._root->left;
|
||||
if (e == _data._nil)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
while (e->left != _data._nil)
|
||||
e = e->left;
|
||||
|
@ -627,11 +627,11 @@ public:
|
|||
Element *back() const {
|
||||
|
||||
if (!_data._root)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Element *e = _data._root->left;
|
||||
if (e == _data._nil)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
while (e->right != _data._nil)
|
||||
e = e->right;
|
||||
|
|
|
@ -66,7 +66,7 @@ void AStar::add_point(int p_id, const Vector3 &p_pos, real_t p_weight_scale) {
|
|||
pt->id = p_id;
|
||||
pt->pos = p_pos;
|
||||
pt->weight_scale = p_weight_scale;
|
||||
pt->prev_point = NULL;
|
||||
pt->prev_point = nullptr;
|
||||
pt->open_pass = 0;
|
||||
pt->closed_pass = 0;
|
||||
pt->enabled = true;
|
||||
|
@ -167,7 +167,7 @@ void AStar::connect_points(int p_id, int p_with_id, bool bidirectional) {
|
|||
if (bidirectional) s.direction = Segment::BIDIRECTIONAL;
|
||||
|
||||
Set<Segment>::Element *element = segments.find(s);
|
||||
if (element != NULL) {
|
||||
if (element != nullptr) {
|
||||
s.direction |= element->get().direction;
|
||||
if (s.direction == Segment::BIDIRECTIONAL) {
|
||||
// Both are neighbours of each other now
|
||||
|
@ -194,7 +194,7 @@ void AStar::disconnect_points(int p_id, int p_with_id, bool bidirectional) {
|
|||
int remove_direction = bidirectional ? (int)Segment::BIDIRECTIONAL : s.direction;
|
||||
|
||||
Set<Segment>::Element *element = segments.find(s);
|
||||
if (element != NULL) {
|
||||
if (element != nullptr) {
|
||||
// s is the new segment
|
||||
// Erase the directions to be removed
|
||||
s.direction = (element->get().direction & ~remove_direction);
|
||||
|
@ -255,7 +255,7 @@ bool AStar::are_points_connected(int p_id, int p_with_id, bool bidirectional) co
|
|||
Segment s(p_id, p_with_id);
|
||||
const Set<Segment>::Element *element = segments.find(s);
|
||||
|
||||
return element != NULL &&
|
||||
return element != nullptr &&
|
||||
(bidirectional || (element->get().direction & s.direction) == s.direction);
|
||||
}
|
||||
|
||||
|
|
|
@ -72,8 +72,8 @@ public:
|
|||
AABB merge(const AABB &p_with) const;
|
||||
void merge_with(const AABB &p_aabb); ///merge with another AABB
|
||||
AABB intersection(const AABB &p_aabb) const; ///get box where two intersect, empty if no intersection occurs
|
||||
bool intersects_segment(const Vector3 &p_from, const Vector3 &p_to, Vector3 *r_clip = NULL, Vector3 *r_normal = NULL) const;
|
||||
bool intersects_ray(const Vector3 &p_from, const Vector3 &p_dir, Vector3 *r_clip = NULL, Vector3 *r_normal = NULL) const;
|
||||
bool intersects_segment(const Vector3 &p_from, const Vector3 &p_to, Vector3 *r_clip = nullptr, Vector3 *r_normal = nullptr) const;
|
||||
bool intersects_ray(const Vector3 &p_from, const Vector3 &p_dir, Vector3 *r_clip = nullptr, Vector3 *r_normal = nullptr) const;
|
||||
_FORCE_INLINE_ bool smits_intersect_ray(const Vector3 &p_from, const Vector3 &p_dir, real_t t0, real_t t1) const;
|
||||
|
||||
_FORCE_INLINE_ bool intersects_convex_shape(const Plane *p_planes, int p_plane_count) const;
|
||||
|
|
|
@ -760,7 +760,7 @@ void Expression::exec_func(BuiltinFunc p_func, const Variant **p_inputs, Variant
|
|||
PackedByteArray barr;
|
||||
bool full_objects = *p_inputs[1];
|
||||
int len;
|
||||
Error err = encode_variant(*p_inputs[0], NULL, len, full_objects);
|
||||
Error err = encode_variant(*p_inputs[0], nullptr, len, full_objects);
|
||||
if (err) {
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||
r_error.argument = 0;
|
||||
|
@ -791,7 +791,7 @@ void Expression::exec_func(BuiltinFunc p_func, const Variant **p_inputs, Variant
|
|||
Variant ret;
|
||||
{
|
||||
const uint8_t *r = varr.ptr();
|
||||
Error err = decode_variant(ret, r, varr.size(), NULL, allow_objects);
|
||||
Error err = decode_variant(ret, r, varr.size(), nullptr, allow_objects);
|
||||
if (err != OK) {
|
||||
r_error_str = RTR("Not enough bytes for decoding bytes, or invalid format.");
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||
|
@ -1298,12 +1298,12 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
|
||||
while (true) {
|
||||
//keep appending stuff to expression
|
||||
ENode *expr = NULL;
|
||||
ENode *expr = nullptr;
|
||||
|
||||
Token tk;
|
||||
_get_token(tk);
|
||||
if (error_set)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
switch (tk.type) {
|
||||
case TK_CURLY_BRACKET_OPEN: {
|
||||
|
@ -1321,18 +1321,18 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
dn->dict.push_back(subexpr);
|
||||
|
||||
_get_token(tk);
|
||||
if (tk.type != TK_COLON) {
|
||||
_set_error("Expected ':'");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
dn->dict.push_back(subexpr);
|
||||
|
||||
|
@ -1365,7 +1365,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
an->array.push_back(subexpr);
|
||||
|
||||
cofs = str_ofs;
|
||||
|
@ -1385,11 +1385,11 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//a suexpression
|
||||
ENode *e = _parse_expression();
|
||||
if (error_set)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
_get_token(tk);
|
||||
if (tk.type != TK_PARENTHESIS_CLOSE) {
|
||||
_set_error("Expected ')'");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
expr = e;
|
||||
|
@ -1419,7 +1419,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
func_call->arguments.push_back(subexpr);
|
||||
|
||||
|
@ -1484,7 +1484,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
_get_token(tk);
|
||||
if (tk.type != TK_PARENTHESIS_OPEN) {
|
||||
_set_error("Expected '('");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
ConstructorNode *constructor = alloc_node<ConstructorNode>();
|
||||
|
@ -1501,7 +1501,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
constructor->arguments.push_back(subexpr);
|
||||
|
||||
|
@ -1525,7 +1525,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
_get_token(tk);
|
||||
if (tk.type != TK_PARENTHESIS_OPEN) {
|
||||
_set_error("Expected '('");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
BuiltinFuncNode *bifunc = alloc_node<BuiltinFuncNode>();
|
||||
|
@ -1542,7 +1542,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
bifunc->arguments.push_back(subexpr);
|
||||
|
||||
|
@ -1584,7 +1584,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
|
||||
default: {
|
||||
_set_error("Expected expression.");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
} break;
|
||||
}
|
||||
|
||||
|
@ -1594,7 +1594,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
int cofs2 = str_ofs;
|
||||
_get_token(tk);
|
||||
if (error_set)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
bool done = false;
|
||||
|
||||
|
@ -1607,14 +1607,14 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
|
||||
ENode *what = _parse_expression();
|
||||
if (!what)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
index->index = what;
|
||||
|
||||
_get_token(tk);
|
||||
if (tk.type != TK_BRACKET_CLOSE) {
|
||||
_set_error("Expected ']' at end of index.");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
expr = index;
|
||||
|
||||
|
@ -1624,7 +1624,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
_get_token(tk);
|
||||
if (tk.type != TK_IDENTIFIER) {
|
||||
_set_error("Expected identifier after '.'");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
StringName identifier = tk.value;
|
||||
|
@ -1648,7 +1648,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
//parse an expression
|
||||
ENode *subexpr = _parse_expression();
|
||||
if (!subexpr)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
func_call->arguments.push_back(subexpr);
|
||||
|
||||
|
@ -1698,7 +1698,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
int cofs = str_ofs;
|
||||
_get_token(tk);
|
||||
if (error_set)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
|
||||
Variant::Operator op = Variant::OP_MAX;
|
||||
|
||||
|
@ -1805,7 +1805,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
|
||||
default: {
|
||||
_set_error("Parser bug, invalid operator in expression: " + itos(expression[i].op));
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1822,7 +1822,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
if (next_op == -1) {
|
||||
|
||||
_set_error("Yet another parser bug....");
|
||||
ERR_FAIL_V(NULL);
|
||||
ERR_FAIL_V(nullptr);
|
||||
}
|
||||
|
||||
// OK! create operator..
|
||||
|
@ -1835,7 +1835,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
if (expr_pos == expression.size()) {
|
||||
//can happen..
|
||||
_set_error("Unexpected end of expression...");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1845,7 +1845,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
OperatorNode *op = alloc_node<OperatorNode>();
|
||||
op->op = expression[i].op;
|
||||
op->nodes[0] = expression[i + 1].node;
|
||||
op->nodes[1] = NULL;
|
||||
op->nodes[1] = nullptr;
|
||||
expression.write[i].is_op = false;
|
||||
expression.write[i].node = op;
|
||||
expression.remove(i + 1);
|
||||
|
@ -1855,7 +1855,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
|
||||
if (next_op < 1 || next_op >= (expression.size() - 1)) {
|
||||
_set_error("Parser bug...");
|
||||
ERR_FAIL_V(NULL);
|
||||
ERR_FAIL_V(nullptr);
|
||||
}
|
||||
|
||||
OperatorNode *op = alloc_node<OperatorNode>();
|
||||
|
@ -1864,7 +1864,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
if (expression[next_op - 1].is_op) {
|
||||
|
||||
_set_error("Parser bug...");
|
||||
ERR_FAIL_V(NULL);
|
||||
ERR_FAIL_V(nullptr);
|
||||
}
|
||||
|
||||
if (expression[next_op + 1].is_op) {
|
||||
|
@ -1874,7 +1874,7 @@ Expression::ENode *Expression::_parse_expression() {
|
|||
// due to how precedence works, unaries will always disappear first
|
||||
|
||||
_set_error("Unexpected two consecutive operators.");
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
op->nodes[0] = expression[next_op - 1].node; //expression goes as left
|
||||
|
@ -1897,8 +1897,8 @@ bool Expression::_compile_expression() {
|
|||
|
||||
if (nodes) {
|
||||
memdelete(nodes);
|
||||
nodes = NULL;
|
||||
root = NULL;
|
||||
nodes = nullptr;
|
||||
root = nullptr;
|
||||
}
|
||||
|
||||
error_str = String();
|
||||
|
@ -1908,11 +1908,11 @@ bool Expression::_compile_expression() {
|
|||
root = _parse_expression();
|
||||
|
||||
if (error_set) {
|
||||
root = NULL;
|
||||
root = nullptr;
|
||||
if (nodes) {
|
||||
memdelete(nodes);
|
||||
}
|
||||
nodes = NULL;
|
||||
nodes = nullptr;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -2151,8 +2151,8 @@ Error Expression::parse(const String &p_expression, const Vector<String> &p_inpu
|
|||
|
||||
if (nodes) {
|
||||
memdelete(nodes);
|
||||
nodes = NULL;
|
||||
root = NULL;
|
||||
nodes = nullptr;
|
||||
root = nullptr;
|
||||
}
|
||||
|
||||
error_str = String();
|
||||
|
@ -2164,11 +2164,11 @@ Error Expression::parse(const String &p_expression, const Vector<String> &p_inpu
|
|||
root = _parse_expression();
|
||||
|
||||
if (error_set) {
|
||||
root = NULL;
|
||||
root = nullptr;
|
||||
if (nodes) {
|
||||
memdelete(nodes);
|
||||
}
|
||||
nodes = NULL;
|
||||
nodes = nullptr;
|
||||
return ERR_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
@ -2212,8 +2212,8 @@ Expression::Expression() :
|
|||
output_type(Variant::NIL),
|
||||
sequenced(false),
|
||||
error_set(true),
|
||||
root(NULL),
|
||||
nodes(NULL),
|
||||
root(nullptr),
|
||||
nodes(nullptr),
|
||||
execution_error(false) {
|
||||
str_ofs = 0;
|
||||
expression_dirty = false;
|
||||
|
|
|
@ -219,7 +219,7 @@ private:
|
|||
|
||||
Type type;
|
||||
|
||||
ENode() { next = NULL; }
|
||||
ENode() { next = nullptr; }
|
||||
virtual ~ENode() {
|
||||
if (next) {
|
||||
memdelete(next);
|
||||
|
@ -352,7 +352,7 @@ protected:
|
|||
|
||||
public:
|
||||
Error parse(const String &p_expression, const Vector<String> &p_input_names = Vector<String>());
|
||||
Variant execute(Array p_inputs, Object *p_base = NULL, bool p_show_error = true);
|
||||
Variant execute(Array p_inputs, Object *p_base = nullptr, bool p_show_error = true);
|
||||
bool has_execute_failed() const;
|
||||
String get_error_text() const;
|
||||
|
||||
|
|
|
@ -891,7 +891,7 @@ public:
|
|||
for (int i = 0; i < c; i++) {
|
||||
const Vector2 &v1 = p[i];
|
||||
const Vector2 &v2 = p[(i + 1) % c];
|
||||
if (segment_intersects_segment_2d(v1, v2, p_point, further_away, NULL)) {
|
||||
if (segment_intersects_segment_2d(v1, v2, p_point, further_away, nullptr)) {
|
||||
intersections++;
|
||||
}
|
||||
}
|
||||
|
@ -902,7 +902,7 @@ public:
|
|||
static Vector<Vector<Face3>> separate_objects(Vector<Face3> p_array);
|
||||
|
||||
// Create a "wrap" that encloses the given geometry.
|
||||
static Vector<Face3> wrap_geometry(Vector<Face3> p_array, real_t *p_error = NULL);
|
||||
static Vector<Face3> wrap_geometry(Vector<Face3> p_array, real_t *p_error = nullptr);
|
||||
|
||||
struct MeshData {
|
||||
|
||||
|
|
|
@ -119,9 +119,9 @@ private:
|
|||
children_count = 0;
|
||||
parent_index = -1;
|
||||
last_pass = 0;
|
||||
parent = NULL;
|
||||
parent = nullptr;
|
||||
for (int i = 0; i < 8; i++)
|
||||
children[i] = NULL;
|
||||
children[i] = nullptr;
|
||||
}
|
||||
|
||||
~Octant() {
|
||||
|
@ -171,7 +171,7 @@ private:
|
|||
octree = 0;
|
||||
pairable_mask = 0;
|
||||
pairable_type = 0;
|
||||
common_parent = NULL;
|
||||
common_parent = nullptr;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -308,19 +308,19 @@ private:
|
|||
|
||||
while (root && root->children_count < 2 && !root->elements.size() && !(use_pairs && root->pairable_elements.size())) {
|
||||
|
||||
Octant *new_root = NULL;
|
||||
Octant *new_root = nullptr;
|
||||
if (root->children_count == 1) {
|
||||
|
||||
for (int i = 0; i < 8; i++) {
|
||||
|
||||
if (root->children[i]) {
|
||||
new_root = root->children[i];
|
||||
root->children[i] = NULL;
|
||||
root->children[i] = nullptr;
|
||||
break;
|
||||
}
|
||||
}
|
||||
ERR_FAIL_COND(!new_root);
|
||||
new_root->parent = NULL;
|
||||
new_root->parent = nullptr;
|
||||
new_root->parent_index = -1;
|
||||
}
|
||||
|
||||
|
@ -332,7 +332,7 @@ private:
|
|||
|
||||
void _insert_element(Element *p_element, Octant *p_octant);
|
||||
void _ensure_valid_root(const AABB &p_aabb);
|
||||
bool _remove_element_from_octant(Element *p_element, Octant *p_octant, Octant *p_limit = NULL);
|
||||
bool _remove_element_from_octant(Element *p_element, Octant *p_octant, Octant *p_limit = nullptr);
|
||||
void _remove_element(Element *p_element);
|
||||
void _pair_element(Element *p_element, Octant *p_octant);
|
||||
void _unpair_element(Element *p_element, Octant *p_octant);
|
||||
|
@ -377,10 +377,10 @@ public:
|
|||
int get_subindex(OctreeElementID p_id) const;
|
||||
|
||||
int cull_convex(const Vector<Plane> &p_convex, T **p_result_array, int p_result_max, uint32_t p_mask = 0xFFFFFFFF);
|
||||
int cull_aabb(const AABB &p_aabb, T **p_result_array, int p_result_max, int *p_subindex_array = NULL, uint32_t p_mask = 0xFFFFFFFF);
|
||||
int cull_segment(const Vector3 &p_from, const Vector3 &p_to, T **p_result_array, int p_result_max, int *p_subindex_array = NULL, uint32_t p_mask = 0xFFFFFFFF);
|
||||
int cull_aabb(const AABB &p_aabb, T **p_result_array, int p_result_max, int *p_subindex_array = nullptr, uint32_t p_mask = 0xFFFFFFFF);
|
||||
int cull_segment(const Vector3 &p_from, const Vector3 &p_to, T **p_result_array, int p_result_max, int *p_subindex_array = nullptr, uint32_t p_mask = 0xFFFFFFFF);
|
||||
|
||||
int cull_point(const Vector3 &p_point, T **p_result_array, int p_result_max, int *p_subindex_array = NULL, uint32_t p_mask = 0xFFFFFFFF);
|
||||
int cull_point(const Vector3 &p_point, T **p_result_array, int p_result_max, int *p_subindex_array = nullptr, uint32_t p_mask = 0xFFFFFFFF);
|
||||
|
||||
void set_pair_callback(PairCallback p_callback, void *p_userdata);
|
||||
void set_unpair_callback(UnpairCallback p_callback, void *p_userdata);
|
||||
|
@ -396,7 +396,7 @@ public:
|
|||
template <class T, bool use_pairs, class AL>
|
||||
T *Octree<T, use_pairs, AL>::get(OctreeElementID p_id) const {
|
||||
const typename ElementMap::Element *E = element_map.find(p_id);
|
||||
ERR_FAIL_COND_V(!E, NULL);
|
||||
ERR_FAIL_COND_V(!E, nullptr);
|
||||
return E->get().userdata;
|
||||
}
|
||||
|
||||
|
@ -442,7 +442,7 @@ void Octree<T, use_pairs, AL>::_insert_element(Element *p_element, Octant *p_oct
|
|||
|
||||
p_element->octant_owners.push_back(owner);
|
||||
|
||||
if (p_element->common_parent == NULL) {
|
||||
if (p_element->common_parent == nullptr) {
|
||||
p_element->common_parent = p_octant;
|
||||
p_element->container_aabb = p_octant->aabb;
|
||||
} else {
|
||||
|
@ -463,7 +463,7 @@ void Octree<T, use_pairs, AL>::_insert_element(Element *p_element, Octant *p_oct
|
|||
} else {
|
||||
/* not big enough, send it to subitems */
|
||||
int splits = 0;
|
||||
bool candidate = p_element->common_parent == NULL;
|
||||
bool candidate = p_element->common_parent == nullptr;
|
||||
|
||||
for (int i = 0; i < 8; i++) {
|
||||
|
||||
|
@ -552,7 +552,7 @@ void Octree<T, use_pairs, AL>::_ensure_valid_root(const AABB &p_aabb) {
|
|||
|
||||
root = memnew_allocator(Octant, AL);
|
||||
|
||||
root->parent = NULL;
|
||||
root->parent = nullptr;
|
||||
root->parent_index = -1;
|
||||
root->aabb = base;
|
||||
|
||||
|
@ -634,11 +634,11 @@ bool Octree<T, use_pairs, AL>::_remove_element_from_octant(Element *p_element, O
|
|||
|
||||
if (p_octant == root) { // won't have a parent, just erase
|
||||
|
||||
root = NULL;
|
||||
root = nullptr;
|
||||
} else {
|
||||
ERR_FAIL_INDEX_V(p_octant->parent_index, 8, octant_removed);
|
||||
|
||||
parent->children[p_octant->parent_index] = NULL;
|
||||
parent->children[p_octant->parent_index] = nullptr;
|
||||
parent->children_count--;
|
||||
}
|
||||
|
||||
|
@ -852,12 +852,12 @@ void Octree<T, use_pairs, AL>::move(OctreeElementID p_id, const AABB &p_aabb) {
|
|||
|
||||
if (old_has_surf) {
|
||||
_remove_element(&e); // removing
|
||||
e.common_parent = NULL;
|
||||
e.common_parent = nullptr;
|
||||
e.aabb = AABB();
|
||||
_optimize();
|
||||
} else {
|
||||
_ensure_valid_root(p_aabb); // inserting
|
||||
e.common_parent = NULL;
|
||||
e.common_parent = nullptr;
|
||||
e.aabb = p_aabb;
|
||||
_insert_element(&e, root);
|
||||
if (use_pairs)
|
||||
|
@ -884,7 +884,7 @@ void Octree<T, use_pairs, AL>::move(OctreeElementID p_id, const AABB &p_aabb) {
|
|||
combined.merge_with(p_aabb);
|
||||
_ensure_valid_root(combined);
|
||||
|
||||
ERR_FAIL_COND(e.octant_owners.front() == NULL);
|
||||
ERR_FAIL_COND(e.octant_owners.front() == nullptr);
|
||||
|
||||
/* FIND COMMON PARENT */
|
||||
|
||||
|
@ -902,7 +902,7 @@ void Octree<T, use_pairs, AL>::move(OctreeElementID p_id, const AABB &p_aabb) {
|
|||
|
||||
//prepare for reinsert
|
||||
e.octant_owners.clear();
|
||||
e.common_parent = NULL;
|
||||
e.common_parent = nullptr;
|
||||
e.aabb = p_aabb;
|
||||
|
||||
_insert_element(&e, common_parent); // reinsert from this point
|
||||
|
@ -971,7 +971,7 @@ void Octree<T, use_pairs, AL>::set_pairable(OctreeElementID p_id, bool p_pairabl
|
|||
e.pairable = p_pairable;
|
||||
e.pairable_type = p_pairable_type;
|
||||
e.pairable_mask = p_pairable_mask;
|
||||
e.common_parent = NULL;
|
||||
e.common_parent = nullptr;
|
||||
|
||||
if (!e.aabb.has_no_surface()) {
|
||||
_ensure_valid_root(e.aabb);
|
||||
|
@ -1364,15 +1364,15 @@ Octree<T, use_pairs, AL>::Octree(real_t p_unit_size) {
|
|||
last_element_id = 1;
|
||||
pass = 1;
|
||||
unit_size = p_unit_size;
|
||||
root = NULL;
|
||||
root = nullptr;
|
||||
|
||||
octant_count = 0;
|
||||
pair_count = 0;
|
||||
|
||||
pair_callback = NULL;
|
||||
unpair_callback = NULL;
|
||||
pair_callback_userdata = NULL;
|
||||
unpair_callback_userdata = NULL;
|
||||
pair_callback = nullptr;
|
||||
unpair_callback = nullptr;
|
||||
pair_callback_userdata = nullptr;
|
||||
unpair_callback_userdata = nullptr;
|
||||
}
|
||||
|
||||
#endif // OCTREE_H
|
||||
|
|
|
@ -399,7 +399,7 @@ Error QuickHull::build(const Vector<Vector3> &p_points, Geometry::MeshData &r_me
|
|||
ERR_CONTINUE(!F);
|
||||
List<Geometry::MeshData::Face>::Element *O = F->get().left == E ? F->get().right : F->get().left;
|
||||
ERR_CONTINUE(O == E);
|
||||
ERR_CONTINUE(O == NULL);
|
||||
ERR_CONTINUE(O == nullptr);
|
||||
|
||||
if (O->get().plane.is_equal_approx(f.plane)) {
|
||||
//merge and delete edge and contiguous face, while repointing edges (uuugh!)
|
||||
|
@ -440,10 +440,10 @@ Error QuickHull::build(const Vector<Vector3> &p_points, Geometry::MeshData &r_me
|
|||
// remove all edge connections to this face
|
||||
for (Map<Edge, RetFaceConnect>::Element *G = ret_edges.front(); G; G = G->next()) {
|
||||
if (G->get().left == O)
|
||||
G->get().left = NULL;
|
||||
G->get().left = nullptr;
|
||||
|
||||
if (G->get().right == O)
|
||||
G->get().right = NULL;
|
||||
G->get().right = nullptr;
|
||||
}
|
||||
|
||||
ret_edges.erase(F); //remove the edge
|
||||
|
|
|
@ -77,15 +77,15 @@ private:
|
|||
struct FaceConnect {
|
||||
List<Face>::Element *left, *right;
|
||||
FaceConnect() {
|
||||
left = NULL;
|
||||
right = NULL;
|
||||
left = nullptr;
|
||||
right = nullptr;
|
||||
}
|
||||
};
|
||||
struct RetFaceConnect {
|
||||
List<Geometry::MeshData::Face>::Element *left, *right;
|
||||
RetFaceConnect() {
|
||||
left = NULL;
|
||||
right = NULL;
|
||||
left = nullptr;
|
||||
right = nullptr;
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -105,7 +105,7 @@ struct Rect2 {
|
|||
|
||||
bool intersects_transformed(const Transform2D &p_xform, const Rect2 &p_rect) const;
|
||||
|
||||
bool intersects_segment(const Point2 &p_from, const Point2 &p_to, Point2 *r_pos = NULL, Point2 *r_normal = NULL) const;
|
||||
bool intersects_segment(const Point2 &p_from, const Point2 &p_to, Point2 *r_pos = nullptr, Point2 *r_normal = nullptr) const;
|
||||
|
||||
inline bool encloses(const Rect2 &p_rect) const {
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
#include "core/project_settings.h"
|
||||
#include "core/script_language.h"
|
||||
|
||||
MessageQueue *MessageQueue::singleton = NULL;
|
||||
MessageQueue *MessageQueue::singleton = nullptr;
|
||||
|
||||
MessageQueue *MessageQueue::get_singleton() {
|
||||
|
||||
|
@ -174,7 +174,7 @@ void MessageQueue::statistics() {
|
|||
|
||||
Object *target = message->callable.get_object();
|
||||
|
||||
if (target != NULL) {
|
||||
if (target != nullptr) {
|
||||
|
||||
switch (message->type & FLAG_MASK) {
|
||||
|
||||
|
@ -240,7 +240,7 @@ int MessageQueue::get_max_buffer_usage() const {
|
|||
|
||||
void MessageQueue::_call_function(const Callable &p_callable, const Variant *p_args, int p_argcount, bool p_show_error) {
|
||||
|
||||
const Variant **argptrs = NULL;
|
||||
const Variant **argptrs = nullptr;
|
||||
if (p_argcount) {
|
||||
argptrs = (const Variant **)alloca(sizeof(Variant *) * p_argcount);
|
||||
for (int i = 0; i < p_argcount; i++) {
|
||||
|
@ -291,7 +291,7 @@ void MessageQueue::flush() {
|
|||
|
||||
Object *target = message->callable.get_object();
|
||||
|
||||
if (target != NULL) {
|
||||
if (target != nullptr) {
|
||||
|
||||
switch (message->type & FLAG_MASK) {
|
||||
case TYPE_CALL: {
|
||||
|
@ -343,7 +343,7 @@ bool MessageQueue::is_flushing() const {
|
|||
|
||||
MessageQueue::MessageQueue() {
|
||||
|
||||
ERR_FAIL_COND_MSG(singleton != NULL, "A MessageQueue singleton already exists.");
|
||||
ERR_FAIL_COND_MSG(singleton != nullptr, "A MessageQueue singleton already exists.");
|
||||
singleton = this;
|
||||
flushing = false;
|
||||
|
||||
|
@ -375,6 +375,6 @@ MessageQueue::~MessageQueue() {
|
|||
read_pos += sizeof(Variant) * message->args;
|
||||
}
|
||||
|
||||
singleton = NULL;
|
||||
singleton = nullptr;
|
||||
memdelete_arr(buffer);
|
||||
}
|
||||
|
|
|
@ -108,7 +108,7 @@ MethodBind::MethodBind() {
|
|||
argument_count = 0;
|
||||
default_argument_count = 0;
|
||||
#ifdef DEBUG_METHODS_ENABLED
|
||||
argument_types = NULL;
|
||||
argument_types = nullptr;
|
||||
#endif
|
||||
_const = false;
|
||||
_returns = false;
|
||||
|
|
|
@ -382,7 +382,7 @@ public:
|
|||
virtual bool is_vararg() const { return true; }
|
||||
|
||||
MethodBindVarArg() {
|
||||
call_method = NULL;
|
||||
call_method = nullptr;
|
||||
_set_returns(true);
|
||||
}
|
||||
};
|
||||
|
|
|
@ -99,7 +99,7 @@ void NodePath::unref() {
|
|||
|
||||
memdelete(data);
|
||||
}
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
}
|
||||
|
||||
bool NodePath::operator==(const NodePath &p_path) const {
|
||||
|
@ -189,7 +189,7 @@ NodePath::operator String() const {
|
|||
|
||||
NodePath::NodePath(const NodePath &p_path) {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
|
||||
if (p_path.data && p_path.data->refcount.ref()) {
|
||||
|
||||
|
@ -287,7 +287,7 @@ NodePath NodePath::get_as_property_path() const {
|
|||
|
||||
NodePath::NodePath(const Vector<StringName> &p_path, bool p_absolute) {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
|
||||
if (p_path.size() == 0)
|
||||
return;
|
||||
|
@ -302,7 +302,7 @@ NodePath::NodePath(const Vector<StringName> &p_path, bool p_absolute) {
|
|||
|
||||
NodePath::NodePath(const Vector<StringName> &p_path, const Vector<StringName> &p_subpath, bool p_absolute) {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
|
||||
if (p_path.size() == 0 && p_subpath.size() == 0)
|
||||
return;
|
||||
|
@ -349,7 +349,7 @@ NodePath NodePath::simplified() const {
|
|||
|
||||
NodePath::NodePath(const String &p_path) {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
|
||||
if (p_path.length() == 0)
|
||||
return;
|
||||
|
@ -442,7 +442,7 @@ bool NodePath::is_empty() const {
|
|||
}
|
||||
NodePath::NodePath() {
|
||||
|
||||
data = NULL;
|
||||
data = nullptr;
|
||||
}
|
||||
|
||||
NodePath::~NodePath() {
|
||||
|
|
|
@ -224,7 +224,7 @@ public:
|
|||
/**
|
||||
* returns true if the value was found, false otherwise.
|
||||
*
|
||||
* if r_data is not NULL then the value will be written to the object
|
||||
* if r_data is not nullptr then the value will be written to the object
|
||||
* it points to.
|
||||
*/
|
||||
bool lookup(const TKey &p_key, TValue &r_data) const {
|
||||
|
@ -243,7 +243,7 @@ public:
|
|||
/**
|
||||
* returns true if the value was found, false otherwise.
|
||||
*
|
||||
* if r_data is not NULL then the value will be written to the object
|
||||
* if r_data is not nullptr then the value will be written to the object
|
||||
* it points to.
|
||||
*/
|
||||
TValue *lookup_ptr(const TKey &p_key) const {
|
||||
|
@ -253,7 +253,7 @@ public:
|
|||
if (exists) {
|
||||
return &values[pos];
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ bool has(const TKey &p_key) const {
|
||||
|
@ -325,8 +325,8 @@ public:
|
|||
Iterator it;
|
||||
it.valid = false;
|
||||
it.pos = p_iter.pos;
|
||||
it.key = NULL;
|
||||
it.value = NULL;
|
||||
it.key = nullptr;
|
||||
it.value = nullptr;
|
||||
|
||||
for (uint32_t i = it.pos; i < capacity; i++) {
|
||||
it.pos = i + 1;
|
||||
|
|
|
@ -368,7 +368,7 @@ bool Object::_predelete() {
|
|||
_predelete_ok = 1;
|
||||
notification(NOTIFICATION_PREDELETE, true);
|
||||
if (_predelete_ok) {
|
||||
_class_ptr = NULL; //must restore so destructors can access class ptr correctly
|
||||
_class_ptr = nullptr; //must restore so destructors can access class ptr correctly
|
||||
}
|
||||
return _predelete_ok;
|
||||
}
|
||||
|
@ -781,7 +781,7 @@ bool Object::has_method(const StringName &p_method) const {
|
|||
|
||||
MethodBind *method = ClassDB::get_method(get_class_name(), p_method);
|
||||
|
||||
return method != NULL;
|
||||
return method != nullptr;
|
||||
}
|
||||
|
||||
Variant Object::getvar(const Variant &p_key, bool *r_valid) const {
|
||||
|
@ -797,7 +797,7 @@ void Object::setvar(const Variant &p_key, const Variant &p_value, bool *r_valid)
|
|||
}
|
||||
|
||||
Variant Object::callv(const StringName &p_method, const Array &p_args) {
|
||||
const Variant **argptrs = NULL;
|
||||
const Variant **argptrs = nullptr;
|
||||
|
||||
if (p_args.size() > 0) {
|
||||
argptrs = (const Variant **)alloca(sizeof(Variant *) * p_args.size());
|
||||
|
@ -955,7 +955,7 @@ void Object::set_script_and_instance(const Variant &p_script, ScriptInstance *p_
|
|||
//this function is not meant to be used in any of these ways
|
||||
ERR_FAIL_COND(p_script.is_null());
|
||||
ERR_FAIL_COND(!p_instance);
|
||||
ERR_FAIL_COND(script_instance != NULL || !script.is_null());
|
||||
ERR_FAIL_COND(script_instance != nullptr || !script.is_null());
|
||||
|
||||
script = p_script;
|
||||
script_instance = p_instance;
|
||||
|
@ -968,7 +968,7 @@ void Object::set_script(const Variant &p_script) {
|
|||
|
||||
if (script_instance) {
|
||||
memdelete(script_instance);
|
||||
script_instance = NULL;
|
||||
script_instance = nullptr;
|
||||
}
|
||||
|
||||
script = p_script;
|
||||
|
@ -1119,7 +1119,7 @@ Variant Object::_emit_signal(const Variant **p_args, int p_argcount, Callable::C
|
|||
|
||||
StringName signal = *p_args[0];
|
||||
|
||||
const Variant **args = NULL;
|
||||
const Variant **args = nullptr;
|
||||
|
||||
int argc = p_argcount - 1;
|
||||
if (argc) {
|
||||
|
@ -1354,7 +1354,7 @@ void Object::get_signal_list(List<MethodInfo> *p_signals) const {
|
|||
|
||||
ClassDB::get_signal_list(get_class_name(), p_signals);
|
||||
//find maybe usersignals?
|
||||
const StringName *S = NULL;
|
||||
const StringName *S = nullptr;
|
||||
|
||||
while ((S = signal_map.next(S))) {
|
||||
|
||||
|
@ -1367,7 +1367,7 @@ void Object::get_signal_list(List<MethodInfo> *p_signals) const {
|
|||
|
||||
void Object::get_all_signal_connections(List<Connection> *p_connections) const {
|
||||
|
||||
const StringName *S = NULL;
|
||||
const StringName *S = nullptr;
|
||||
|
||||
while ((S = signal_map.next(S))) {
|
||||
|
||||
|
@ -1393,7 +1393,7 @@ void Object::get_signal_connection_list(const StringName &p_signal, List<Connect
|
|||
int Object::get_persistent_signal_connection_count() const {
|
||||
|
||||
int count = 0;
|
||||
const StringName *S = NULL;
|
||||
const StringName *S = nullptr;
|
||||
|
||||
while ((S = signal_map.next(S))) {
|
||||
|
||||
|
@ -1505,7 +1505,7 @@ bool Object::is_connected(const StringName &p_signal, const Callable &p_callable
|
|||
|
||||
return s->slot_map.has(target);
|
||||
//const Map<Signal::Target,Signal::Slot>::Element *E = s->slot_map.find(target);
|
||||
//return (E!=NULL);
|
||||
//return (E!=nullptr );
|
||||
}
|
||||
|
||||
void Object::disconnect_compat(const StringName &p_signal, Object *p_to_object, const StringName &p_to_method) {
|
||||
|
@ -1840,7 +1840,7 @@ Variant::Type Object::get_static_property_type_indexed(const Vector<StringName>
|
|||
}
|
||||
|
||||
Callable::CallError ce;
|
||||
Variant check = Variant::construct(t, NULL, 0, ce);
|
||||
Variant check = Variant::construct(t, nullptr, 0, ce);
|
||||
|
||||
for (int i = 1; i < p_path.size(); i++) {
|
||||
if (check.get_type() == Variant::OBJECT || check.get_type() == Variant::DICTIONARY || check.get_type() == Variant::ARRAY) {
|
||||
|
@ -1889,7 +1889,7 @@ uint32_t Object::get_edited_version() const {
|
|||
|
||||
void *Object::get_script_instance_binding(int p_script_language_index) {
|
||||
#ifdef DEBUG_ENABLED
|
||||
ERR_FAIL_INDEX_V(p_script_language_index, MAX_SCRIPT_INSTANCE_BINDINGS, NULL);
|
||||
ERR_FAIL_INDEX_V(p_script_language_index, MAX_SCRIPT_INSTANCE_BINDINGS, nullptr);
|
||||
#endif
|
||||
|
||||
//it's up to the script language to make this thread safe, if the function is called twice due to threads being out of syncro
|
||||
|
@ -1910,19 +1910,19 @@ void *Object::get_script_instance_binding(int p_script_language_index) {
|
|||
|
||||
bool Object::has_script_instance_binding(int p_script_language_index) {
|
||||
|
||||
return _script_instance_bindings[p_script_language_index] != NULL;
|
||||
return _script_instance_bindings[p_script_language_index] != nullptr;
|
||||
}
|
||||
|
||||
void Object::set_script_instance_binding(int p_script_language_index, void *p_data) {
|
||||
#ifdef DEBUG_ENABLED
|
||||
CRASH_COND(_script_instance_bindings[p_script_language_index] != NULL);
|
||||
CRASH_COND(_script_instance_bindings[p_script_language_index] != nullptr);
|
||||
#endif
|
||||
_script_instance_bindings[p_script_language_index] = p_data;
|
||||
}
|
||||
|
||||
void Object::_construct_object(bool p_reference) {
|
||||
type_is_reference = p_reference;
|
||||
_class_ptr = NULL;
|
||||
_class_ptr = nullptr;
|
||||
_block_signals = false;
|
||||
_predelete_ok = 0;
|
||||
_instance_id = ObjectDB::add_instance(this);
|
||||
|
@ -1931,7 +1931,7 @@ void Object::_construct_object(bool p_reference) {
|
|||
_emitting = false;
|
||||
instance_binding_count = 0;
|
||||
memset(_script_instance_bindings, 0, sizeof(void *) * MAX_SCRIPT_INSTANCE_BINDINGS);
|
||||
script_instance = NULL;
|
||||
script_instance = nullptr;
|
||||
#ifdef TOOLS_ENABLED
|
||||
|
||||
_edited = false;
|
||||
|
@ -1955,16 +1955,16 @@ Object::~Object() {
|
|||
|
||||
if (script_instance)
|
||||
memdelete(script_instance);
|
||||
script_instance = NULL;
|
||||
script_instance = nullptr;
|
||||
|
||||
const StringName *S = NULL;
|
||||
const StringName *S = nullptr;
|
||||
|
||||
if (_emitting) {
|
||||
//@todo this may need to actually reach the debugger prioritarily somehow because it may crash before
|
||||
ERR_PRINT("Object " + to_string() + " was freed or unreferenced while a signal is being emitted from it. Try connecting to the signal using 'CONNECT_DEFERRED' flag, or use queue_free() to free the object (if this object is a Node) to avoid this error and potential crashes.");
|
||||
}
|
||||
|
||||
while ((S = signal_map.next(NULL))) {
|
||||
while ((S = signal_map.next(nullptr))) {
|
||||
|
||||
SignalData *s = &signal_map[*S];
|
||||
|
||||
|
|
|
@ -242,7 +242,7 @@ struct MethodInfo {
|
|||
//if ( is_type(T::get_class_static()) )
|
||||
//return static_cast<T*>(this);
|
||||
////else
|
||||
//return NULL;
|
||||
//return nullptr;
|
||||
|
||||
/*
|
||||
the following is an incomprehensible blob of hacks and workarounds to compensate for many of the fallencies in C++. As a plus, this macro pretty much alone defines the object model.
|
||||
|
@ -591,11 +591,11 @@ public:
|
|||
return dynamic_cast<T *>(p_object);
|
||||
#else
|
||||
if (!p_object)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
if (p_object->is_class_ptr(T::get_class_ptr_static()))
|
||||
return static_cast<T *>(p_object);
|
||||
else
|
||||
return NULL;
|
||||
return nullptr;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -605,11 +605,11 @@ public:
|
|||
return dynamic_cast<const T *>(p_object);
|
||||
#else
|
||||
if (!p_object)
|
||||
return NULL;
|
||||
return nullptr;
|
||||
if (p_object->is_class_ptr(T::get_class_ptr_static()))
|
||||
return static_cast<const T *>(p_object);
|
||||
else
|
||||
return NULL;
|
||||
return nullptr;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -644,10 +644,10 @@ public:
|
|||
//void set(const String& p_name, const Variant& p_value);
|
||||
//Variant get(const String& p_name) const;
|
||||
|
||||
void set(const StringName &p_name, const Variant &p_value, bool *r_valid = NULL);
|
||||
Variant get(const StringName &p_name, bool *r_valid = NULL) const;
|
||||
void set_indexed(const Vector<StringName> &p_names, const Variant &p_value, bool *r_valid = NULL);
|
||||
Variant get_indexed(const Vector<StringName> &p_names, bool *r_valid = NULL) const;
|
||||
void set(const StringName &p_name, const Variant &p_value, bool *r_valid = nullptr);
|
||||
Variant get(const StringName &p_name, bool *r_valid = nullptr) const;
|
||||
void set_indexed(const Vector<StringName> &p_names, const Variant &p_value, bool *r_valid = nullptr);
|
||||
Variant get_indexed(const Vector<StringName> &p_names, bool *r_valid = nullptr) const;
|
||||
|
||||
void get_property_list(List<PropertyInfo> *p_list, bool p_reversed = false) const;
|
||||
|
||||
|
@ -664,8 +664,8 @@ public:
|
|||
String to_string();
|
||||
|
||||
//used mainly by script, get and set all INCLUDING string
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = NULL) const;
|
||||
virtual void setvar(const Variant &p_key, const Variant &p_value, bool *r_valid = NULL);
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = nullptr) const;
|
||||
virtual void setvar(const Variant &p_key, const Variant &p_value, bool *r_valid = nullptr);
|
||||
|
||||
/* SCRIPT */
|
||||
|
||||
|
@ -715,8 +715,8 @@ public:
|
|||
void set_block_signals(bool p_block);
|
||||
bool is_blocking_signals() const;
|
||||
|
||||
Variant::Type get_static_property_type(const StringName &p_property, bool *r_valid = NULL) const;
|
||||
Variant::Type get_static_property_type_indexed(const Vector<StringName> &p_path, bool *r_valid = NULL) const;
|
||||
Variant::Type get_static_property_type(const StringName &p_property, bool *r_valid = nullptr) const;
|
||||
Variant::Type get_static_property_type_indexed(const Vector<StringName> &p_path, bool *r_valid = nullptr) const;
|
||||
|
||||
virtual void get_translatable_strings(List<String> *p_strings) const;
|
||||
|
||||
|
|
|
@ -70,9 +70,9 @@ public:
|
|||
|
||||
public:
|
||||
_FORCE_INLINE_ Element() :
|
||||
list_element(NULL),
|
||||
prev_element(NULL),
|
||||
next_element(NULL) {
|
||||
list_element(nullptr),
|
||||
prev_element(nullptr),
|
||||
next_element(nullptr) {
|
||||
}
|
||||
|
||||
Element next() const {
|
||||
|
@ -104,7 +104,7 @@ public:
|
|||
}
|
||||
|
||||
operator bool() const {
|
||||
return (list_element != NULL);
|
||||
return (list_element != nullptr);
|
||||
}
|
||||
|
||||
const K &key() const {
|
||||
|
@ -144,7 +144,7 @@ public:
|
|||
|
||||
public:
|
||||
_FORCE_INLINE_ ConstElement() :
|
||||
list_element(NULL) {
|
||||
list_element(nullptr) {
|
||||
}
|
||||
|
||||
ConstElement(const ConstElement &other) :
|
||||
|
@ -157,11 +157,11 @@ public:
|
|||
}
|
||||
|
||||
ConstElement next() const {
|
||||
return ConstElement(list_element ? list_element->next() : NULL);
|
||||
return ConstElement(list_element ? list_element->next() : nullptr);
|
||||
}
|
||||
|
||||
ConstElement prev() const {
|
||||
return ConstElement(list_element ? list_element->prev() : NULL);
|
||||
return ConstElement(list_element ? list_element->prev() : nullptr);
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ bool operator==(const ConstElement &p_other) const {
|
||||
|
@ -172,7 +172,7 @@ public:
|
|||
}
|
||||
|
||||
operator bool() const {
|
||||
return (list_element != NULL);
|
||||
return (list_element != nullptr);
|
||||
}
|
||||
|
||||
const K &key() const {
|
||||
|
@ -196,7 +196,7 @@ public:
|
|||
if (list_element) {
|
||||
return ConstElement(*list_element);
|
||||
}
|
||||
return ConstElement(NULL);
|
||||
return ConstElement(nullptr);
|
||||
}
|
||||
|
||||
Element find(const K &p_key) {
|
||||
|
@ -204,7 +204,7 @@ public:
|
|||
if (list_element) {
|
||||
return Element(*list_element);
|
||||
}
|
||||
return Element(NULL);
|
||||
return Element(nullptr);
|
||||
}
|
||||
|
||||
Element insert(const K &p_key, const V &p_value) {
|
||||
|
@ -213,7 +213,7 @@ public:
|
|||
(*list_element)->get().second = p_value;
|
||||
return Element(*list_element);
|
||||
}
|
||||
typename InternalList::Element *new_element = list.push_back(Pair<const K *, V>(NULL, p_value));
|
||||
typename InternalList::Element *new_element = list.push_back(Pair<const K *, V>(nullptr, p_value));
|
||||
typename InternalMap::Element *e = map.set(p_key, new_element);
|
||||
new_element->get().first = &e->key();
|
||||
|
||||
|
@ -223,7 +223,7 @@ public:
|
|||
void erase(Element &p_element) {
|
||||
map.erase(p_element.key());
|
||||
list.erase(p_element.list_element);
|
||||
p_element.list_element = NULL;
|
||||
p_element.list_element = nullptr;
|
||||
}
|
||||
|
||||
bool erase(const K &p_key) {
|
||||
|
|
|
@ -226,11 +226,11 @@ String DirAccess::fix_path(String p_path) const {
|
|||
return p_path;
|
||||
}
|
||||
|
||||
DirAccess::CreateFunc DirAccess::create_func[ACCESS_MAX] = { 0, 0, 0 };
|
||||
DirAccess::CreateFunc DirAccess::create_func[ACCESS_MAX] = { nullptr, nullptr, nullptr };
|
||||
|
||||
DirAccess *DirAccess::create_for_path(const String &p_path) {
|
||||
|
||||
DirAccess *da = NULL;
|
||||
DirAccess *da = nullptr;
|
||||
if (p_path.begins_with("res://")) {
|
||||
|
||||
da = create(ACCESS_RESOURCES);
|
||||
|
@ -249,13 +249,13 @@ DirAccess *DirAccess::open(const String &p_path, Error *r_error) {
|
|||
|
||||
DirAccess *da = create_for_path(p_path);
|
||||
|
||||
ERR_FAIL_COND_V_MSG(!da, NULL, "Cannot create DirAccess for path '" + p_path + "'.");
|
||||
ERR_FAIL_COND_V_MSG(!da, nullptr, "Cannot create DirAccess for path '" + p_path + "'.");
|
||||
Error err = da->change_dir(p_path);
|
||||
if (r_error)
|
||||
*r_error = err;
|
||||
if (err != OK) {
|
||||
memdelete(da);
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
return da;
|
||||
|
@ -263,7 +263,7 @@ DirAccess *DirAccess::open(const String &p_path, Error *r_error) {
|
|||
|
||||
DirAccess *DirAccess::create(AccessType p_access) {
|
||||
|
||||
DirAccess *da = create_func[p_access] ? create_func[p_access]() : NULL;
|
||||
DirAccess *da = create_func[p_access] ? create_func[p_access]() : nullptr;
|
||||
if (da) {
|
||||
da->_access_type = p_access;
|
||||
}
|
||||
|
|
|
@ -128,7 +128,7 @@ public:
|
|||
create_func[p_access] = _create_builtin<T>;
|
||||
}
|
||||
|
||||
static DirAccess *open(const String &p_path, Error *r_error = NULL);
|
||||
static DirAccess *open(const String &p_path, Error *r_error = nullptr);
|
||||
|
||||
DirAccess();
|
||||
virtual ~DirAccess();
|
||||
|
@ -141,7 +141,7 @@ struct DirAccessRef {
|
|||
return f;
|
||||
}
|
||||
|
||||
operator bool() const { return f != NULL; }
|
||||
operator bool() const { return f != nullptr; }
|
||||
DirAccess *f;
|
||||
DirAccessRef(DirAccess *fa) { f = fa; }
|
||||
~DirAccessRef() {
|
||||
|
|
|
@ -36,15 +36,15 @@
|
|||
#include "core/os/os.h"
|
||||
#include "core/project_settings.h"
|
||||
|
||||
FileAccess::CreateFunc FileAccess::create_func[ACCESS_MAX] = { 0, 0 };
|
||||
FileAccess::CreateFunc FileAccess::create_func[ACCESS_MAX] = { nullptr, nullptr };
|
||||
|
||||
FileAccess::FileCloseFailNotify FileAccess::close_fail_notify = NULL;
|
||||
FileAccess::FileCloseFailNotify FileAccess::close_fail_notify = nullptr;
|
||||
|
||||
bool FileAccess::backup_save = false;
|
||||
|
||||
FileAccess *FileAccess::create(AccessType p_access) {
|
||||
|
||||
ERR_FAIL_INDEX_V(p_access, ACCESS_MAX, 0);
|
||||
ERR_FAIL_INDEX_V(p_access, ACCESS_MAX, nullptr);
|
||||
|
||||
FileAccess *ret = create_func[p_access]();
|
||||
ret->_set_access_type(p_access);
|
||||
|
@ -70,7 +70,7 @@ void FileAccess::_set_access_type(AccessType p_access) {
|
|||
|
||||
FileAccess *FileAccess::create_for_path(const String &p_path) {
|
||||
|
||||
FileAccess *ret = NULL;
|
||||
FileAccess *ret = nullptr;
|
||||
if (p_path.begins_with("res://")) {
|
||||
|
||||
ret = create(ACCESS_RESOURCES);
|
||||
|
@ -95,7 +95,7 @@ FileAccess *FileAccess::open(const String &p_path, int p_mode_flags, Error *r_er
|
|||
|
||||
//try packed data first
|
||||
|
||||
FileAccess *ret = NULL;
|
||||
FileAccess *ret = nullptr;
|
||||
if (!(p_mode_flags & WRITE) && PackedData::get_singleton() && !PackedData::get_singleton()->is_disabled()) {
|
||||
ret = PackedData::get_singleton()->try_open_path(p_path);
|
||||
if (ret) {
|
||||
|
@ -113,7 +113,7 @@ FileAccess *FileAccess::open(const String &p_path, int p_mode_flags, Error *r_er
|
|||
if (err != OK) {
|
||||
|
||||
memdelete(ret);
|
||||
ret = NULL;
|
||||
ret = nullptr;
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
|
@ -153,7 +153,7 @@ public:
|
|||
|
||||
static FileAccess *create(AccessType p_access); /// Create a file access (for the current platform) this is the only portable way of accessing files.
|
||||
static FileAccess *create_for_path(const String &p_path);
|
||||
static FileAccess *open(const String &p_path, int p_mode_flags, Error *r_error = NULL); /// Create a file access (for the current platform) this is the only portable way of accessing files.
|
||||
static FileAccess *open(const String &p_path, int p_mode_flags, Error *r_error = nullptr); /// Create a file access (for the current platform) this is the only portable way of accessing files.
|
||||
static CreateFunc get_create_func(AccessType p_access);
|
||||
static bool exists(const String &p_name); ///< return true if a file exists
|
||||
static uint64_t get_modified_time(const String &p_file);
|
||||
|
@ -167,8 +167,8 @@ public:
|
|||
static String get_sha256(const String &p_file);
|
||||
static String get_multiple_md5(const Vector<String> &p_file);
|
||||
|
||||
static Vector<uint8_t> get_file_as_array(const String &p_path, Error *r_error = NULL);
|
||||
static String get_file_as_string(const String &p_path, Error *r_error = NULL);
|
||||
static Vector<uint8_t> get_file_as_array(const String &p_path, Error *r_error = nullptr);
|
||||
static String get_file_as_string(const String &p_path, Error *r_error = nullptr);
|
||||
|
||||
template <class T>
|
||||
static void make_default(AccessType p_access) {
|
||||
|
@ -187,7 +187,7 @@ struct FileAccessRef {
|
|||
return f;
|
||||
}
|
||||
|
||||
operator bool() const { return f != NULL; }
|
||||
operator bool() const { return f != nullptr; }
|
||||
FileAccess *f;
|
||||
operator FileAccess *() { return f; }
|
||||
FileAccessRef(FileAccess *fa) { f = fa; }
|
||||
|
|
|
@ -288,7 +288,7 @@ static const _KeyCodeText _keycodes[] = {
|
|||
|
||||
{KEY_DIVISION ,"Division"},
|
||||
{KEY_YDIAERESIS ,"Ydiaeresis"},
|
||||
{0 ,0}
|
||||
{0 ,nullptr}
|
||||
/* clang-format on */
|
||||
};
|
||||
|
||||
|
|
|
@ -81,7 +81,7 @@ void *Memory::alloc_static(size_t p_bytes, bool p_pad_align) {
|
|||
|
||||
void *mem = malloc(p_bytes + (prepad ? PAD_ALIGN : 0));
|
||||
|
||||
ERR_FAIL_COND_V(!mem, NULL);
|
||||
ERR_FAIL_COND_V(!mem, nullptr);
|
||||
|
||||
atomic_increment(&alloc_count);
|
||||
|
||||
|
@ -103,7 +103,7 @@ void *Memory::alloc_static(size_t p_bytes, bool p_pad_align) {
|
|||
|
||||
void *Memory::realloc_static(void *p_memory, size_t p_bytes, bool p_pad_align) {
|
||||
|
||||
if (p_memory == NULL) {
|
||||
if (p_memory == nullptr) {
|
||||
return alloc_static(p_bytes, p_pad_align);
|
||||
}
|
||||
|
||||
|
@ -130,12 +130,12 @@ void *Memory::realloc_static(void *p_memory, size_t p_bytes, bool p_pad_align) {
|
|||
|
||||
if (p_bytes == 0) {
|
||||
free(mem);
|
||||
return NULL;
|
||||
return nullptr;
|
||||
} else {
|
||||
*s = p_bytes;
|
||||
|
||||
mem = (uint8_t *)realloc(mem, p_bytes + PAD_ALIGN);
|
||||
ERR_FAIL_COND_V(!mem, NULL);
|
||||
ERR_FAIL_COND_V(!mem, nullptr);
|
||||
|
||||
s = (uint64_t *)mem;
|
||||
|
||||
|
@ -147,7 +147,7 @@ void *Memory::realloc_static(void *p_memory, size_t p_bytes, bool p_pad_align) {
|
|||
|
||||
mem = (uint8_t *)realloc(mem, p_bytes);
|
||||
|
||||
ERR_FAIL_COND_V(mem == NULL && p_bytes > 0, NULL);
|
||||
ERR_FAIL_COND_V(mem == nullptr && p_bytes > 0, nullptr);
|
||||
|
||||
return mem;
|
||||
}
|
||||
|
@ -155,7 +155,7 @@ void *Memory::realloc_static(void *p_memory, size_t p_bytes, bool p_pad_align) {
|
|||
|
||||
void Memory::free_static(void *p_ptr, bool p_pad_align) {
|
||||
|
||||
ERR_FAIL_COND(p_ptr == NULL);
|
||||
ERR_FAIL_COND(p_ptr == nullptr);
|
||||
|
||||
uint8_t *mem = (uint8_t *)p_ptr;
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
#include "core/os/os.h"
|
||||
|
||||
uint8_t MIDIDriver::last_received_message = 0x00;
|
||||
MIDIDriver *MIDIDriver::singleton = NULL;
|
||||
MIDIDriver *MIDIDriver::singleton = nullptr;
|
||||
MIDIDriver *MIDIDriver::get_singleton() {
|
||||
|
||||
return singleton;
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
|
||||
#include <stdarg.h>
|
||||
|
||||
OS *OS::singleton = NULL;
|
||||
OS *OS::singleton = nullptr;
|
||||
|
||||
OS *OS::get_singleton() {
|
||||
|
||||
|
@ -184,7 +184,7 @@ void OS::dump_memory_to_file(const char *p_file) {
|
|||
//Memory::dump_static_mem_to_file(p_file);
|
||||
}
|
||||
|
||||
static FileAccess *_OSPRF = NULL;
|
||||
static FileAccess *_OSPRF = nullptr;
|
||||
|
||||
static void _OS_printres(Object *p_obj) {
|
||||
|
||||
|
@ -207,7 +207,7 @@ void OS::print_all_resources(String p_to_file) {
|
|||
Error err;
|
||||
_OSPRF = FileAccess::open(p_to_file, FileAccess::WRITE, &err);
|
||||
if (err != OK) {
|
||||
_OSPRF = NULL;
|
||||
_OSPRF = nullptr;
|
||||
ERR_FAIL_MSG("Can't print all resources to file: " + String(p_to_file) + ".");
|
||||
}
|
||||
}
|
||||
|
@ -218,13 +218,13 @@ void OS::print_all_resources(String p_to_file) {
|
|||
|
||||
if (_OSPRF)
|
||||
memdelete(_OSPRF);
|
||||
_OSPRF = NULL;
|
||||
_OSPRF = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
void OS::print_resources_in_use(bool p_short) {
|
||||
|
||||
ResourceCache::dump(NULL, p_short);
|
||||
ResourceCache::dump(nullptr, p_short);
|
||||
}
|
||||
|
||||
void OS::dump_resources_to_file(const char *p_file) {
|
||||
|
@ -523,9 +523,9 @@ OS::OS() {
|
|||
_allow_layered = false;
|
||||
_stack_bottom = (void *)(&stack_bottom);
|
||||
|
||||
_logger = NULL;
|
||||
_logger = nullptr;
|
||||
|
||||
has_server_feature_callback = NULL;
|
||||
has_server_feature_callback = nullptr;
|
||||
|
||||
Vector<Logger *> loggers;
|
||||
loggers.push_back(memnew(StdLogger));
|
||||
|
@ -534,5 +534,5 @@ OS::OS() {
|
|||
|
||||
OS::~OS() {
|
||||
memdelete(_logger);
|
||||
singleton = NULL;
|
||||
singleton = nullptr;
|
||||
}
|
||||
|
|
|
@ -130,7 +130,7 @@ public:
|
|||
virtual int get_low_processor_usage_mode_sleep_usec() const;
|
||||
|
||||
virtual String get_executable_path() const;
|
||||
virtual Error execute(const String &p_path, const List<String> &p_arguments, bool p_blocking = true, ProcessID *r_child_id = NULL, String *r_pipe = NULL, int *r_exitcode = NULL, bool read_stderr = false, Mutex *p_pipe_mutex = NULL) = 0;
|
||||
virtual Error execute(const String &p_path, const List<String> &p_arguments, bool p_blocking = true, ProcessID *r_child_id = nullptr, String *r_pipe = nullptr, int *r_exitcode = nullptr, bool read_stderr = false, Mutex *p_pipe_mutex = nullptr) = 0;
|
||||
virtual Error kill(const ProcessID &p_pid) = 0;
|
||||
virtual int get_process_id() const;
|
||||
virtual void vibrate_handheld(int p_duration_ms = 500);
|
||||
|
|
|
@ -34,11 +34,11 @@
|
|||
|
||||
#include <stddef.h>
|
||||
|
||||
RWLock *(*RWLock::create_func)() = 0;
|
||||
RWLock *(*RWLock::create_func)() = nullptr;
|
||||
|
||||
RWLock *RWLock::create() {
|
||||
|
||||
ERR_FAIL_COND_V(!create_func, 0);
|
||||
ERR_FAIL_COND_V(!create_func, nullptr);
|
||||
|
||||
return create_func();
|
||||
}
|
||||
|
|
|
@ -30,10 +30,10 @@
|
|||
|
||||
#include "thread.h"
|
||||
|
||||
Thread *(*Thread::create_func)(ThreadCreateCallback, void *, const Settings &) = NULL;
|
||||
Thread::ID (*Thread::get_thread_id_func)() = NULL;
|
||||
void (*Thread::wait_to_finish_func)(Thread *) = NULL;
|
||||
Error (*Thread::set_name_func)(const String &) = NULL;
|
||||
Thread *(*Thread::create_func)(ThreadCreateCallback, void *, const Settings &) = nullptr;
|
||||
Thread::ID (*Thread::get_thread_id_func)() = nullptr;
|
||||
void (*Thread::wait_to_finish_func)(Thread *) = nullptr;
|
||||
Error (*Thread::set_name_func)(const String &) = nullptr;
|
||||
|
||||
Thread::ID Thread::_main_thread_id = 0;
|
||||
|
||||
|
@ -50,7 +50,7 @@ Thread *Thread::create(ThreadCreateCallback p_callback, void *p_user, const Sett
|
|||
|
||||
return create_func(p_callback, p_user, p_settings);
|
||||
}
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void Thread::wait_to_finish(Thread *p_thread) {
|
||||
|
|
|
@ -114,7 +114,7 @@ Variant PackedDataContainer::_get_at_ofs(uint32_t p_ofs, const uint8_t *p_buf, b
|
|||
} else {
|
||||
|
||||
Variant v;
|
||||
Error rerr = decode_variant(v, p_buf + p_ofs, datalen - p_ofs, NULL, false);
|
||||
Error rerr = decode_variant(v, p_buf + p_ofs, datalen - p_ofs, nullptr, false);
|
||||
|
||||
if (rerr != OK) {
|
||||
|
||||
|
@ -254,7 +254,7 @@ uint32_t PackedDataContainer::_pack(const Variant &p_data, Vector<uint8_t> &tmpd
|
|||
|
||||
uint32_t pos = tmpdata.size();
|
||||
int len;
|
||||
encode_variant(p_data, NULL, len, false);
|
||||
encode_variant(p_data, nullptr, len, false);
|
||||
tmpdata.resize(tmpdata.size() + len);
|
||||
encode_variant(p_data, &tmpdata.write[pos], len, false);
|
||||
return pos;
|
||||
|
|
|
@ -73,7 +73,7 @@ protected:
|
|||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = NULL) const;
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = nullptr) const;
|
||||
Error pack(const Variant &p_data);
|
||||
|
||||
int size() const;
|
||||
|
@ -98,7 +98,7 @@ public:
|
|||
bool _is_dictionary() const;
|
||||
|
||||
int size() const;
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = NULL) const;
|
||||
virtual Variant getvar(const Variant &p_key, bool *r_valid = nullptr) const;
|
||||
|
||||
PackedDataContainerRef();
|
||||
};
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue