// WARNING: Please don't edit this file. It was generated by C++/WinRT // v2.0.250303.1 #pragma once #ifndef WINRT_Microsoft_Windows_Foundation_H #define WINRT_Microsoft_Windows_Foundation_H #include "winrt/base.h" static_assert(winrt::check_version(CPPWINRT_VERSION, "2.0.250303.1"), "Mismatched C++/WinRT headers."); #define CPPWINRT_VERSION "2.0.250303.1" #include "winrt/impl/Microsoft.Windows.Foundation.2.h" namespace winrt::impl { template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromBoolean( bool value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromBoolean(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromBoolean(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromInt16( int16_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromInt16(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromInt16(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromInt32( int32_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromInt32(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromInt32(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromInt64( int64_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromInt64(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromInt64(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromUInt8( uint8_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromUInt8(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromUInt8(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromUInt16( uint16_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromUInt16(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromUInt16(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromUInt32( uint32_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromUInt32(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromUInt32(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromUInt64( uint64_t value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromUInt64(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromUInt64(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromSingle( float value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromSingle(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromSingle(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromDouble( double value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromDouble(value, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromDouble(value, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromString( param::hstring const& source) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->FromString(*(void**)(&source), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->FromString(*(void**)(&source), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics< D>::FromStringInvariant(param::hstring const& source) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromStringInvariant(*(void**)(&source), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromStringInvariant(*(void**)(&source), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::FromString( param::hstring const& source, param::hstring const& localeName) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FromStringWithLocale( *(void**)(&source), *(void**)(&localeName), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FromStringWithLocale( *(void**)(&source), *(void**)(&localeName), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics< D>::TryFromString(param::hstring const& source, winrt::Microsoft::Windows::Foundation::DecimalValue& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->TryFromString( *(void**)(&source), impl::bind_out(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->TryFromString( *(void**)(&source), impl::bind_out(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics:: TryFromStringInvariant( param::hstring const& source, winrt::Microsoft::Windows::Foundation::DecimalValue& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->TryFromStringInvariant( *(void**)(&source), impl::bind_out(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->TryFromStringInvariant( *(void**)(&source), impl::bind_out(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics< D>::TryFromString(param::hstring const& source, param::hstring const& localeName, winrt::Microsoft::Windows::Foundation::DecimalValue& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->TryFromStringWithLocale( *(void**)(&source), *(void**)(&localeName), impl::bind_out(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->TryFromStringWithLocale( *(void**)(&source), *(void**)(&localeName), impl::bind_out(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToBoolean( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToBoolean(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToBoolean(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToInt16( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { int16_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToInt16(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToInt16(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToInt32( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { int32_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToInt32(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToInt32(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToInt64( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { int64_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToInt64(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToInt64(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToUInt8( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { uint8_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToUInt8(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToUInt8(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToUInt16( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { uint16_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToUInt16(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToUInt16(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToUInt32( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { uint32_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToUInt32(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToUInt32(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToUInt64( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { uint64_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToUInt64(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToUInt64(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToSingle( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { float result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToSingle(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToSingle(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToDouble( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { double result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToDouble(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToDouble(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToString( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToString(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToString(impl::bind_in(value), &result)); } return hstring{result, take_ownership_from_abi}; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics:: ToStringInvariant(winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->ToStringInvariant(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->ToStringInvariant(impl::bind_in(value), &result)); } return hstring{result, take_ownership_from_abi}; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::ToString( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, param::hstring const& localeName) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ToStringWithLocale( impl::bind_in(value), *(void**)(&localeName), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ToStringWithLocale( impl::bind_in(value), *(void**)(&localeName), &result)); } return hstring{result, take_ownership_from_abi}; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Equals( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Equals(impl::bind_in(left), impl::bind_in(right), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Equals(impl::bind_in(left), impl::bind_in(right), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Compare( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { int32_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Compare(impl::bind_in(left), impl::bind_in(right), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Compare(impl::bind_in(left), impl::bind_in(right), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::IsValid( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->IsValid(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->IsValid(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::IsInteger( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { bool result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->IsInteger(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->IsInteger(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Scale( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { uint8_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Scale(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Scale(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Sign( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { int32_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Sign(impl::bind_in(value), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Sign(impl::bind_in(value), &result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::MaxScale() const { uint8_t result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MaxScale(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MaxScale(&result)); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::MaxValue() const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MaxValue(put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MaxValue(put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::MinValue() const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MinValue(put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MinValue(put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Negate( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->Negate(impl::bind_in(value), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->Negate(impl::bind_in(value), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Abs( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Abs(impl::bind_in(value), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Abs(impl::bind_in(value), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Truncate( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->Truncate(impl::bind_in(value), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->Truncate(impl::bind_in(value), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Floor( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->Floor(impl::bind_in(value), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->Floor(impl::bind_in(value), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Ceiling( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult( _winrt_abi_type->Ceiling(impl::bind_in(value), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult( _winrt_abi_type->Ceiling(impl::bind_in(value), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Round( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, int32_t decimalPlaces) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Round(impl::bind_in(value), decimalPlaces, put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Round(impl::bind_in(value), decimalPlaces, put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Clamp( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, winrt::Microsoft::Windows::Foundation::DecimalValue const& min, winrt::Microsoft::Windows::Foundation::DecimalValue const& max) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Clamp(impl::bind_in(value), impl::bind_in(min), impl::bind_in(max), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Clamp(impl::bind_in(value), impl::bind_in(min), impl::bind_in(max), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Add( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Add(impl::bind_in(left), impl::bind_in(right), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Add(impl::bind_in(left), impl::bind_in(right), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Subtract( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Subtract( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Subtract( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Multiply( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Multiply( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Multiply( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Divide( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Divide( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Divide( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } return result; } template auto consume_Microsoft_Windows_Foundation_IDecimalHelperStatics::Modulo( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) const { winrt::Microsoft::Windows::Foundation::DecimalValue result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason< winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics, D const*>( static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Modulo( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Modulo( impl::bind_in(left), impl::bind_in(right), put_abi(result))); } return result; } #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base< D, winrt::Microsoft::Windows::Foundation::IDecimalHelperStatics> { int32_t __stdcall FromBoolean( bool value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromBoolean(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromInt16( int16_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromInt16(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromInt32( int32_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromInt32(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromInt64( int64_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromInt64(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromUInt8( uint8_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromUInt8(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromUInt16( uint16_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromUInt16(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromUInt32( uint32_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromUInt32(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromUInt64( uint64_t value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromUInt64(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromSingle( float value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromSingle(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromDouble( double value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromDouble(value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromString( void* source, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromString(*reinterpret_cast(&source))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromStringInvariant( void* source, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromStringInvariant( *reinterpret_cast(&source))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FromStringWithLocale( void* source, void* localeName, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().FromString( *reinterpret_cast(&source), *reinterpret_cast(&localeName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall TryFromString( void* source, struct struct_Microsoft_Windows_Foundation_DecimalValue* value, bool* result) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().TryFromString( *reinterpret_cast(&source), *reinterpret_cast( value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall TryFromStringInvariant( void* source, struct struct_Microsoft_Windows_Foundation_DecimalValue* value, bool* result) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().TryFromStringInvariant( *reinterpret_cast(&source), *reinterpret_cast( value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall TryFromStringWithLocale( void* source, void* localeName, struct struct_Microsoft_Windows_Foundation_DecimalValue* value, bool* result) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().TryFromString( *reinterpret_cast(&source), *reinterpret_cast(&localeName), *reinterpret_cast( value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToBoolean( struct struct_Microsoft_Windows_Foundation_DecimalValue value, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToBoolean( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToInt16( struct struct_Microsoft_Windows_Foundation_DecimalValue value, int16_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToInt16( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToInt32( struct struct_Microsoft_Windows_Foundation_DecimalValue value, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToInt32( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToInt64( struct struct_Microsoft_Windows_Foundation_DecimalValue value, int64_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToInt64( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToUInt8( struct struct_Microsoft_Windows_Foundation_DecimalValue value, uint8_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToUInt8( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToUInt16( struct struct_Microsoft_Windows_Foundation_DecimalValue value, uint16_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToUInt16( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToUInt32( struct struct_Microsoft_Windows_Foundation_DecimalValue value, uint32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToUInt32( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToUInt64( struct struct_Microsoft_Windows_Foundation_DecimalValue value, uint64_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToUInt64( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToSingle( struct struct_Microsoft_Windows_Foundation_DecimalValue value, float* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToSingle( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToDouble( struct struct_Microsoft_Windows_Foundation_DecimalValue value, double* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToDouble( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToString( struct struct_Microsoft_Windows_Foundation_DecimalValue value, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToString( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToStringInvariant( struct struct_Microsoft_Windows_Foundation_DecimalValue value, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToStringInvariant( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ToStringWithLocale( struct struct_Microsoft_Windows_Foundation_DecimalValue value, void* localeName, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ToString( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&value), *reinterpret_cast(&localeName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Equals( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Equals( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Compare( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Compare( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall IsValid( struct struct_Microsoft_Windows_Foundation_DecimalValue value, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().IsValid( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall IsInteger( struct struct_Microsoft_Windows_Foundation_DecimalValue value, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().IsInteger( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Scale( struct struct_Microsoft_Windows_Foundation_DecimalValue value, uint8_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Scale( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Sign( struct struct_Microsoft_Windows_Foundation_DecimalValue value, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Sign( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MaxScale(uint8_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().MaxScale()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MaxValue( struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().MaxValue()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MinValue( struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().MinValue()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Negate( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Negate( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Abs( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Abs( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Truncate( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Truncate( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Floor( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Floor( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Ceiling( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Ceiling( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Round( struct struct_Microsoft_Windows_Foundation_DecimalValue value, int32_t decimalPlaces, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Round( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &value), decimalPlaces)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Clamp( struct struct_Microsoft_Windows_Foundation_DecimalValue value, struct struct_Microsoft_Windows_Foundation_DecimalValue min, struct struct_Microsoft_Windows_Foundation_DecimalValue max, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from< winrt::Microsoft::Windows::Foundation::DecimalValue>(this->shim().Clamp( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&value), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&min), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>(&max))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Add( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Add( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Subtract( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Subtract( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Multiply( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Multiply( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Divide( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Divide( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Modulo( struct struct_Microsoft_Windows_Foundation_DecimalValue left, struct struct_Microsoft_Windows_Foundation_DecimalValue right, struct struct_Microsoft_Windows_Foundation_DecimalValue* result) noexcept final try { zero_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from( this->shim().Modulo( *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &left), *reinterpret_cast< winrt::Microsoft::Windows::Foundation::DecimalValue const*>( &right))); return 0; } catch (...) { return to_hresult(); } }; #endif } // namespace winrt::impl WINRT_EXPORT namespace winrt::Microsoft::Windows::Foundation { inline auto DecimalHelper::FromBoolean(bool value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromBoolean(value); }); } inline auto DecimalHelper::FromInt16(int16_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromInt16(value); }); } inline auto DecimalHelper::FromInt32(int32_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromInt32(value); }); } inline auto DecimalHelper::FromInt64(int64_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromInt64(value); }); } inline auto DecimalHelper::FromUInt8(uint8_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromUInt8(value); }); } inline auto DecimalHelper::FromUInt16(uint16_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromUInt16(value); }); } inline auto DecimalHelper::FromUInt32(uint32_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromUInt32(value); }); } inline auto DecimalHelper::FromUInt64(uint64_t value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromUInt64(value); }); } inline auto DecimalHelper::FromSingle(float value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromSingle(value); }); } inline auto DecimalHelper::FromDouble(double value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromDouble(value); }); } inline auto DecimalHelper::FromString(param::hstring const& source) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromString(source); }); } inline auto DecimalHelper::FromStringInvariant(param::hstring const& source) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromStringInvariant(source); }); } inline auto DecimalHelper::FromString(param::hstring const& source, param::hstring const& localeName) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.FromString(source, localeName); }); } inline auto DecimalHelper::TryFromString( param::hstring const& source, winrt::Microsoft::Windows::Foundation::DecimalValue& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.TryFromString(source, value); }); } inline auto DecimalHelper::TryFromStringInvariant( param::hstring const& source, winrt::Microsoft::Windows::Foundation::DecimalValue& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.TryFromStringInvariant(source, value); }); } inline auto DecimalHelper::TryFromString( param::hstring const& source, param::hstring const& localeName, winrt::Microsoft::Windows::Foundation::DecimalValue& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.TryFromString(source, localeName, value); }); } inline auto DecimalHelper::ToBoolean( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToBoolean(value); }); } inline auto DecimalHelper::ToInt16( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToInt16(value); }); } inline auto DecimalHelper::ToInt32( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToInt32(value); }); } inline auto DecimalHelper::ToInt64( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToInt64(value); }); } inline auto DecimalHelper::ToUInt8( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToUInt8(value); }); } inline auto DecimalHelper::ToUInt16( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToUInt16(value); }); } inline auto DecimalHelper::ToUInt32( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToUInt32(value); }); } inline auto DecimalHelper::ToUInt64( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToUInt64(value); }); } inline auto DecimalHelper::ToSingle( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToSingle(value); }); } inline auto DecimalHelper::ToDouble( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToDouble(value); }); } inline auto DecimalHelper::ToString( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToString(value); }); } inline auto DecimalHelper::ToStringInvariant( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToStringInvariant(value); }); } inline auto DecimalHelper::ToString( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, param::hstring const& localeName) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.ToString(value, localeName); }); } inline auto DecimalHelper::Equals( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Equals(left, right); }); } inline auto DecimalHelper::Compare( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Compare(left, right); }); } inline auto DecimalHelper::IsValid( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.IsValid(value); }); } inline auto DecimalHelper::IsInteger( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.IsInteger(value); }); } inline auto DecimalHelper::Scale( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Scale(value); }); } inline auto DecimalHelper::Sign( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Sign(value); }); } inline auto DecimalHelper::MaxScale() { return impl::call_factory_cast( [](IDecimalHelperStatics const& f) { return f.MaxScale(); }); } inline auto DecimalHelper::MaxValue() { return impl::call_factory_cast< winrt::Microsoft::Windows::Foundation::DecimalValue (*)( IDecimalHelperStatics const&), DecimalHelper, IDecimalHelperStatics>( [](IDecimalHelperStatics const& f) { return f.MaxValue(); }); } inline auto DecimalHelper::MinValue() { return impl::call_factory_cast< winrt::Microsoft::Windows::Foundation::DecimalValue (*)( IDecimalHelperStatics const&), DecimalHelper, IDecimalHelperStatics>( [](IDecimalHelperStatics const& f) { return f.MinValue(); }); } inline auto DecimalHelper::Negate( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Negate(value); }); } inline auto DecimalHelper::Abs( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Abs(value); }); } inline auto DecimalHelper::Truncate( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Truncate(value); }); } inline auto DecimalHelper::Floor( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Floor(value); }); } inline auto DecimalHelper::Ceiling( winrt::Microsoft::Windows::Foundation::DecimalValue const& value) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Ceiling(value); }); } inline auto DecimalHelper::Round( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, int32_t decimalPlaces) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Round(value, decimalPlaces); }); } inline auto DecimalHelper::Clamp( winrt::Microsoft::Windows::Foundation::DecimalValue const& value, winrt::Microsoft::Windows::Foundation::DecimalValue const& min, winrt::Microsoft::Windows::Foundation::DecimalValue const& max) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Clamp(value, min, max); }); } inline auto DecimalHelper::Add( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Add(left, right); }); } inline auto DecimalHelper::Subtract( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Subtract(left, right); }); } inline auto DecimalHelper::Multiply( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Multiply(left, right); }); } inline auto DecimalHelper::Divide( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Divide(left, right); }); } inline auto DecimalHelper::Modulo( winrt::Microsoft::Windows::Foundation::DecimalValue const& left, winrt::Microsoft::Windows::Foundation::DecimalValue const& right) { return impl::call_factory( [&](IDecimalHelperStatics const& f) { return f.Modulo(left, right); }); } } namespace std { #ifndef WINRT_LEAN_AND_MEAN template <> struct hash : winrt::impl::hash_base {}; template <> struct hash : winrt::impl::hash_base {}; #endif #ifdef __cpp_lib_format #endif } // namespace std #endif