Added very useful and convenient macro for parsing attribute IDs
[AROS.git] / compiler / alib / dosupernew.c
blob36b31cd45b850c80c23a35abe8d1cd5fe149bcf3
1 /*
2 Copyright © 2003-2011, The AROS Development Team. All rights reserved.
3 $Id$
4 */
6 #define ALIB_NO_INLINE_STDARG
8 #include <intuition/classes.h>
9 #include <utility/tagitem.h>
10 #include <stdarg.h>
11 #include <proto/alib.h>
12 #include "alib_intern.h"
14 /******************************************************************************
16 NAME */
17 #include <intuition/classusr.h>
18 #include <proto/alib.h>
20 IPTR DoSuperNewTagList
22 /* SYNOPSIS */
23 Class *CLASS,
24 Object *object,
25 struct GadgetInfo *gadgetInfo,
26 struct TagItem *tags
29 /* FUNCTION
31 INPUTS
33 RESULT
35 NOTES
37 EXAMPLE
39 BUGS
41 SEE ALSO
42 intuition.library/NewObjectA(), intuition.library/SetAttrsA(), intuition.library/GetAttr(),
43 intuition.library/DisposeObject(), DoMethodA(),
44 CoerceMethodA(), <intuition/classes.h>
46 ******************************************************************************/
48 if (CLASS == NULL || object == NULL) return 0;
50 return DoSuperMethod(CLASS, object, OM_NEW, tags, gadgetInfo);
51 } /* DoSuperNewTagList() */
53 IPTR DoSuperNewTags
55 Class *CLASS,
56 Object *object,
57 struct GadgetInfo *gadgetInfo,
58 Tag tag1,
59 ...
62 if (CLASS == NULL || object == NULL)
63 return 0;
65 AROS_SLOWSTACKMETHODS_PRE(tag1)
66 retval = DoSuperNewTagList(CLASS, object, gadgetInfo, (struct TagItem *) AROS_SLOWSTACKMETHODS_ARG(tag1));
67 AROS_SLOWSTACKMETHODS_POST
68 } /* DoSuperNewTags() */