@@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2022 Jonathan Schleifer + * Copyright (c) 2008-2024 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -29,10 +29,14 @@ # define OFOnceControlInitValue 0 #endif OF_ASSUME_NONNULL_BEGIN +/** @file */ + +typedef void (*OFOnceFunction)(void); + #ifdef __cplusplus extern "C" { #endif /** * @brief Executes the specified function exactly once in the application's @@ -40,11 +44,11 @@ * * @param control An OFOnceControl. This should be a static variable * preinitialized to `OFOnceControlInitValue`. * @param function The function to execute once */ -extern void OFOnce(OFOnceControl *control, void (*function)(void)); +extern void OFOnce(OFOnceControl *control, OFOnceFunction function); #ifdef __cplusplus } #endif OF_ASSUME_NONNULL_END