report-json-serializer: app and top serializers
[apps/native/ttsd-worker-task.git] / src / macros.h
1 /*
2  * Copyright (c) 2018 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Flora License, Version 1.1 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://floralicense.org/license/
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef __MACROS_H_
18 #define __MACROS_H_
19
20 #define container_of(ptr, type, member) ({                      \
21         const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
22         (type *)( (char *)__mptr - offsetof(type,member) );})
23
24 #endif