Factor static-local nil IntrusivePtrs to global locations

Minor optimization to remove any run-time impact.
This commit is contained in:
Jon Siwek 2020-05-21 17:22:39 -07:00
parent a384bb8b81
commit ea878208ba
8 changed files with 21 additions and 23 deletions

View file

@ -28,8 +28,6 @@ EventHandler::operator bool() const
const IntrusivePtr<FuncType>& EventHandler::GetType(bool check_export)
{
static IntrusivePtr<FuncType> nil;
if ( type )
return type;
@ -37,10 +35,10 @@ const IntrusivePtr<FuncType>& EventHandler::GetType(bool check_export)
check_export);
if ( ! id )
return nil;
return FuncType::nil;
if ( id->GetType()->Tag() != TYPE_FUNC )
return nil;
return FuncType::nil;
type = id->GetType<FuncType>();
return type;