mirror of
https://github.com/openharmony/third_party_rust_bindgen.git
synced 2026-07-19 19:53:31 -04:00
147 lines
3.2 KiB
C++
147 lines
3.2 KiB
C++
#include "Test.h"
|
|
|
|
const int Test::COUNTDOWN[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
|
|
const int* Test::COUNTDOWN_PTR = Test::COUNTDOWN;
|
|
|
|
unsigned VirtualDestructor::sDestructorCount = 0;
|
|
VirtualDestructor::~VirtualDestructor() {
|
|
sDestructorCount++;
|
|
}
|
|
|
|
unsigned InheritsFromVirtualDestructor::sDestructorCount = 0;
|
|
InheritsFromVirtualDestructor::InheritsFromVirtualDestructor() = default;
|
|
|
|
InheritsFromVirtualDestructor::~InheritsFromVirtualDestructor() {
|
|
sDestructorCount++;
|
|
}
|
|
|
|
const int* Test::countdown() {
|
|
return COUNTDOWN;
|
|
}
|
|
|
|
const char* Test::name() {
|
|
return "Test";
|
|
}
|
|
|
|
Test::Test(int foo)
|
|
: m_int(foo)
|
|
, m_double(0.0)
|
|
{}
|
|
|
|
Test::Test(double foo)
|
|
: m_int(0)
|
|
, m_double(foo)
|
|
{}
|
|
|
|
AutoRestoreBool::AutoRestoreBool(bool* ptr)
|
|
: m_ptr(ptr)
|
|
, m_value(*ptr)
|
|
{}
|
|
|
|
AutoRestoreBool::~AutoRestoreBool() {
|
|
*m_ptr = m_value;
|
|
}
|
|
|
|
namespace bitfields {
|
|
|
|
bool
|
|
First::assert(unsigned char first,
|
|
unsigned char second,
|
|
unsigned char third)
|
|
{
|
|
return three_bits_byte_one == first &&
|
|
six_bits_byte_two == second &&
|
|
two_bits_byte_two == third;
|
|
}
|
|
|
|
bool
|
|
Second::assert(int first, bool second)
|
|
{
|
|
return thirty_one_bits == first && one_bit == second;
|
|
}
|
|
|
|
bool
|
|
Third::assert(int first, bool second, ItemKind third)
|
|
{
|
|
return flags == first &&
|
|
is_whatever == second &&
|
|
kind == third;
|
|
}
|
|
|
|
bool
|
|
Fourth::assert(MyEnum tag, unsigned long ptr)
|
|
{
|
|
return this->tag == tag && this->ptr == ptr;
|
|
}
|
|
|
|
bool
|
|
Date2::assert(unsigned short nWeekDay,
|
|
unsigned short nMonthDay,
|
|
unsigned short nMonth,
|
|
unsigned short nYear,
|
|
unsigned short byte)
|
|
{
|
|
return this->nWeekDay == nWeekDay &&
|
|
this->nMonthDay == nMonthDay &&
|
|
this->nMonth == nMonth &&
|
|
this->nYear == nYear &&
|
|
this->byte == byte;
|
|
}
|
|
|
|
bool
|
|
Fifth::assert(unsigned short nWeekDay,
|
|
unsigned short nMonthDay,
|
|
unsigned short nMonth,
|
|
unsigned short nYear,
|
|
unsigned char byte)
|
|
{
|
|
return this->nWeekDay == nWeekDay &&
|
|
this->nMonthDay == nMonthDay &&
|
|
this->nMonth == nMonth &&
|
|
this->nYear == nYear &&
|
|
this->byte == byte;
|
|
}
|
|
|
|
bool
|
|
Sixth::assert(unsigned char byte,
|
|
unsigned char nWeekDay,
|
|
unsigned char nMonth,
|
|
unsigned char nMonthDay) {
|
|
return this->nWeekDay == nWeekDay &&
|
|
this->nMonthDay == nMonthDay &&
|
|
this->nMonth == nMonth &&
|
|
this->byte == byte;
|
|
};
|
|
|
|
bool
|
|
Seventh::assert(bool first,
|
|
int second,
|
|
unsigned short third,
|
|
unsigned int fourth,
|
|
unsigned short fifth,
|
|
bool sixth,
|
|
int seventh) {
|
|
return this->first_one_bit == first &&
|
|
this->second_thirty_bits == second &&
|
|
this->third_two_bits == third &&
|
|
this->fourth_thirty_bits == fourth &&
|
|
this->fifth_two_bits == fifth &&
|
|
this->sixth_one_bit == sixth &&
|
|
this->seventh_thirty_bits == seventh;
|
|
};
|
|
|
|
} // namespace bitfields
|
|
|
|
int my_prefixed_function_name() {
|
|
return 4;
|
|
}
|
|
|
|
Coord coord(double x, double y, double z, double t) {
|
|
Coord res;
|
|
res.v[0] = x;
|
|
res.v[1] = y;
|
|
res.v[2] = z;
|
|
res.v[3] = t;
|
|
return res;
|
|
}
|