PageRenderTime 11ms CodeModel.GetById 5ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/media/libnestegg/src/macros.h

http://github.com/zpao/v8monkey
C Header | 36 lines | 10 code | 8 blank | 18 comment | 0 complexity | a8d91dfb4163ecb8bc67b78d7efc60db MD5 | raw file
 1/*
 2 *	Copyright (c) 2004-2010 Alex Pankratov. All rights reserved.
 3 *
 4 *	Hierarchical memory allocator, 1.2.1
 5 *	http://swapped.cc/halloc
 6 */
 7
 8/*
 9 *	The program is distributed under terms of BSD license. 
10 *	You can obtain the copy of the license by visiting:
11 *	
12 *	http://www.opensource.org/licenses/bsd-license.php
13 */
14
15#ifndef _LIBP_MACROS_H_
16#define _LIBP_MACROS_H_
17
18#include <stddef.h>  /* offsetof */
19
20/*
21 	restore pointer to the structure by a pointer to its field
22 */
23#define structof(p,t,f) ((t*)(- offsetof(t,f) + (char*)(p)))
24
25/*
26 *	redefine for the target compiler
27 */
28#ifdef _WIN32
29#define static_inline static __inline
30#else
31#define static_inline static __inline__
32#endif
33
34
35#endif
36