ObjFW  Artifact [ec4648bae1]

Artifact ec4648bae1b1a4c49b736c4243f02755f384d1ec1d6276cd62b8d951279e06ee:

  • File src/runtime/misc.m — part of check-in [ef6d69931e] at 2019-02-07 00:46:41 on branch trunk — Make style consistent between ObjFW and ObjFW_RT

    ObjFW_RT used to be a separate project that followed the BSD style, as
    it was written in pure C, while ObjFW's style is based on the BSD style
    with changes to make it a better fit for Objective-C. This commit
    changes ObjFW_RT to use the same style as ObjFW. (user: js, size: 1105) [annotate] [blame] [check-ins using]


/*
 * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
 *               2018, 2019
 *   Jonathan Schleifer <js@heap.zone>
 *
 * 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
 * the packaging of this file.
 *
 * Alternatively, it may be distributed under the terms of the GNU General
 * Public License, either version 2 or 3, which can be found in the file
 * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
 * file.
 */

#include "config.h"

#include <stdio.h>
#include <stdlib.h>

#include "ObjFW_RT.h"
#include "private.h"

static objc_enumeration_mutation_handler enumerationMutationHandler = NULL;

void
objc_enumerationMutation(id object)
{
	if (enumerationMutationHandler != NULL)
		enumerationMutationHandler(object);
	else
		OBJC_ERROR("Object was mutated during enumeration!");
}

void
objc_setEnumerationMutationHandler(objc_enumeration_mutation_handler handler)
{
	enumerationMutationHandler = handler;
}