/************************************************************************ * * CppSharp * Licensed under the simplified BSD license. All rights reserved. * ************************************************************************/ #pragma once #include "Helpers.h" namespace CppSharp { namespace CppParser { enum class ParserIntType { NoInt = 0, SignedChar, UnsignedChar, SignedShort, UnsignedShort, SignedInt, UnsignedInt, SignedLong, UnsignedLong, SignedLongLong, UnsignedLongLong }; struct CS_API ParserTargetInfo { ParserTargetInfo(); ~ParserTargetInfo(); std::string ABI; ParserIntType char16Type; ParserIntType char32Type; ParserIntType int64Type; ParserIntType intMaxType; ParserIntType intPtrType; ParserIntType sizeType; ParserIntType uIntMaxType; ParserIntType wCharType; ParserIntType wIntType; unsigned int boolAlign; unsigned int boolWidth; unsigned int charAlign; unsigned int charWidth; unsigned int char16Align; unsigned int char16Width; unsigned int char32Align; unsigned int char32Width; unsigned int halfAlign; unsigned int halfWidth; unsigned int floatAlign; unsigned int floatWidth; unsigned int doubleAlign; unsigned int doubleWidth; unsigned int shortAlign; unsigned int shortWidth; unsigned int intAlign; unsigned int intWidth; unsigned int intMaxTWidth; unsigned int longAlign; unsigned int longWidth; unsigned int longDoubleAlign; unsigned int longDoubleWidth; unsigned int longLongAlign; unsigned int longLongWidth; unsigned int pointerAlign; unsigned int pointerWidth; unsigned int wCharAlign; unsigned int wCharWidth; unsigned int float128Align; unsigned int float128Width; }; } }