diff options
Diffstat (limited to 'src/classlibnative/bcltype/varargsnative.h')
-rw-r--r-- | src/classlibnative/bcltype/varargsnative.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/classlibnative/bcltype/varargsnative.h b/src/classlibnative/bcltype/varargsnative.h new file mode 100644 index 0000000000..c46e3dffaa --- /dev/null +++ b/src/classlibnative/bcltype/varargsnative.h @@ -0,0 +1,33 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. +// +// File: VarArgsNative.h +// + +// +// This module contains the implementation of the native methods for the +// varargs class(es).. +// + +#ifndef _VARARGSNATIVE_H_ +#define _VARARGSNATIVE_H_ + +#include "clrvarargs.h" + +class VarArgsNative +{ +public: + static FCDECL3(void, Init2, VARARGS* _this, LPVOID cookie, LPVOID firstArg); + static FCDECL2(void, Init, VARARGS* _this, LPVOID cookie); + static FCDECL1(int, GetRemainingCount, VARARGS* _this); + static FCDECL1(void*, GetNextArgType, VARARGS* _this); + //TypedByRef can not be passed by ref, so has to pass it as void pointer + static FCDECL2(void, DoGetNextArg, VARARGS* _this, void * value); + //TypedByRef can not be passed by ref, so has to pass it as void pointer + static FCDECL3(void, GetNextArg2, VARARGS* _this, void * value, ReflectClassBaseObject *pTypeUNSAFE); + + static void GetNextArgHelper(VARARGS *data, TypedByRef *value, BOOL fData); +}; + +#endif // _VARARGSNATIVE_H_ |