//! This file has been automatically generated by `objc2`'s `header-translator`. //! DO NOT EDIT use objc2::__framework_prelude::*; use crate::*; extern "C" { #[cfg(all(feature = "NSObjCRuntime", feature = "NSString"))] pub static NSDecimalNumberExactnessException: &'static NSExceptionName; } extern "C" { #[cfg(all(feature = "NSObjCRuntime", feature = "NSString"))] pub static NSDecimalNumberOverflowException: &'static NSExceptionName; } extern "C" { #[cfg(all(feature = "NSObjCRuntime", feature = "NSString"))] pub static NSDecimalNumberUnderflowException: &'static NSExceptionName; } extern "C" { #[cfg(all(feature = "NSObjCRuntime", feature = "NSString"))] pub static NSDecimalNumberDivideByZeroException: &'static NSExceptionName; } extern_protocol!( pub unsafe trait NSDecimalNumberBehaviors { #[cfg(feature = "NSDecimal")] #[method(roundingMode)] unsafe fn roundingMode(&self) -> NSRoundingMode; #[method(scale)] unsafe fn scale(&self) -> c_short; #[cfg(all(feature = "NSDecimal", feature = "NSValue"))] #[method_id(@__retain_semantics Other exceptionDuringOperation:error:leftOperand:rightOperand:)] unsafe fn exceptionDuringOperation_error_leftOperand_rightOperand( &self, operation: Sel, error: NSCalculationError, left_operand: &NSDecimalNumber, right_operand: Option<&NSDecimalNumber>, ) -> Option>; } unsafe impl ProtocolType for dyn NSDecimalNumberBehaviors {} ); extern_class!( #[derive(Debug, PartialEq, Hash)] #[cfg(feature = "NSValue")] pub struct NSDecimalNumber; #[cfg(feature = "NSValue")] unsafe impl ClassType for NSDecimalNumber { #[inherits(NSValue, NSObject)] type Super = NSNumber; type Mutability = Immutable; } ); #[cfg(feature = "NSValue")] unsafe impl Send for NSDecimalNumber {} #[cfg(feature = "NSValue")] unsafe impl Sync for NSDecimalNumber {} #[cfg(all(feature = "NSObject", feature = "NSValue"))] unsafe impl NSCoding for NSDecimalNumber {} #[cfg(all(feature = "NSObject", feature = "NSValue"))] unsafe impl NSCopying for NSDecimalNumber {} #[cfg(feature = "NSValue")] unsafe impl NSObjectProtocol for NSDecimalNumber {} #[cfg(all(feature = "NSObject", feature = "NSValue"))] unsafe impl NSSecureCoding for NSDecimalNumber {} extern_methods!( #[cfg(feature = "NSValue")] unsafe impl NSDecimalNumber { #[method_id(@__retain_semantics Init initWithMantissa:exponent:isNegative:)] pub unsafe fn initWithMantissa_exponent_isNegative( this: Allocated, mantissa: c_ulonglong, exponent: c_short, flag: bool, ) -> Retained; #[cfg(feature = "NSDecimal")] #[method_id(@__retain_semantics Init initWithDecimal:)] pub unsafe fn initWithDecimal(this: Allocated, dcm: NSDecimal) -> Retained; #[cfg(feature = "NSString")] #[method_id(@__retain_semantics Init initWithString:)] pub unsafe fn initWithString( this: Allocated, number_value: Option<&NSString>, ) -> Retained; #[cfg(feature = "NSString")] #[method_id(@__retain_semantics Init initWithString:locale:)] pub unsafe fn initWithString_locale( this: Allocated, number_value: Option<&NSString>, locale: Option<&AnyObject>, ) -> Retained; #[cfg(feature = "NSString")] #[method_id(@__retain_semantics Other descriptionWithLocale:)] pub unsafe fn descriptionWithLocale( &self, locale: Option<&AnyObject>, ) -> Retained; #[cfg(feature = "NSDecimal")] #[method(decimalValue)] pub unsafe fn decimalValue(&self) -> NSDecimal; #[method_id(@__retain_semantics Other decimalNumberWithMantissa:exponent:isNegative:)] pub unsafe fn decimalNumberWithMantissa_exponent_isNegative( mantissa: c_ulonglong, exponent: c_short, flag: bool, ) -> Retained; #[cfg(feature = "NSDecimal")] #[method_id(@__retain_semantics Other decimalNumberWithDecimal:)] pub unsafe fn decimalNumberWithDecimal(dcm: NSDecimal) -> Retained; #[cfg(feature = "NSString")] #[method_id(@__retain_semantics Other decimalNumberWithString:)] pub unsafe fn decimalNumberWithString( number_value: Option<&NSString>, ) -> Retained; #[cfg(feature = "NSString")] #[method_id(@__retain_semantics Other decimalNumberWithString:locale:)] pub unsafe fn decimalNumberWithString_locale( number_value: Option<&NSString>, locale: Option<&AnyObject>, ) -> Retained; #[method_id(@__retain_semantics Other zero)] pub unsafe fn zero() -> Retained; #[method_id(@__retain_semantics Other one)] pub unsafe fn one() -> Retained; #[method_id(@__retain_semantics Other minimumDecimalNumber)] pub unsafe fn minimumDecimalNumber() -> Retained; #[method_id(@__retain_semantics Other maximumDecimalNumber)] pub unsafe fn maximumDecimalNumber() -> Retained; #[method_id(@__retain_semantics Other notANumber)] pub unsafe fn notANumber() -> Retained; #[method_id(@__retain_semantics Other decimalNumberByAdding:)] pub unsafe fn decimalNumberByAdding( &self, decimal_number: &NSDecimalNumber, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByAdding:withBehavior:)] pub unsafe fn decimalNumberByAdding_withBehavior( &self, decimal_number: &NSDecimalNumber, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberBySubtracting:)] pub unsafe fn decimalNumberBySubtracting( &self, decimal_number: &NSDecimalNumber, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberBySubtracting:withBehavior:)] pub unsafe fn decimalNumberBySubtracting_withBehavior( &self, decimal_number: &NSDecimalNumber, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByMultiplyingBy:)] pub unsafe fn decimalNumberByMultiplyingBy( &self, decimal_number: &NSDecimalNumber, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByMultiplyingBy:withBehavior:)] pub unsafe fn decimalNumberByMultiplyingBy_withBehavior( &self, decimal_number: &NSDecimalNumber, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByDividingBy:)] pub unsafe fn decimalNumberByDividingBy( &self, decimal_number: &NSDecimalNumber, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByDividingBy:withBehavior:)] pub unsafe fn decimalNumberByDividingBy_withBehavior( &self, decimal_number: &NSDecimalNumber, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByRaisingToPower:)] pub unsafe fn decimalNumberByRaisingToPower( &self, power: NSUInteger, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByRaisingToPower:withBehavior:)] pub unsafe fn decimalNumberByRaisingToPower_withBehavior( &self, power: NSUInteger, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByMultiplyingByPowerOf10:)] pub unsafe fn decimalNumberByMultiplyingByPowerOf10( &self, power: c_short, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByMultiplyingByPowerOf10:withBehavior:)] pub unsafe fn decimalNumberByMultiplyingByPowerOf10_withBehavior( &self, power: c_short, behavior: Option<&ProtocolObject>, ) -> Retained; #[method_id(@__retain_semantics Other decimalNumberByRoundingAccordingToBehavior:)] pub unsafe fn decimalNumberByRoundingAccordingToBehavior( &self, behavior: Option<&ProtocolObject>, ) -> Retained; #[cfg(feature = "NSObjCRuntime")] #[method(compare:)] pub unsafe fn compare(&self, decimal_number: &NSNumber) -> NSComparisonResult; #[method_id(@__retain_semantics Other defaultBehavior)] pub unsafe fn defaultBehavior() -> Retained>; #[method(setDefaultBehavior:)] pub unsafe fn setDefaultBehavior( default_behavior: &ProtocolObject, ); #[method(objCType)] pub unsafe fn objCType(&self) -> NonNull; #[method(doubleValue)] pub unsafe fn doubleValue(&self) -> c_double; } ); extern_methods!( /// Methods declared on superclass `NSNumber` #[cfg(feature = "NSValue")] unsafe impl NSDecimalNumber { #[cfg(feature = "NSCoder")] #[method_id(@__retain_semantics Init initWithCoder:)] pub unsafe fn initWithCoder( this: Allocated, coder: &NSCoder, ) -> Option>; } ); extern_methods!( /// Methods declared on superclass `NSValue` #[cfg(feature = "NSValue")] unsafe impl NSDecimalNumber { #[method_id(@__retain_semantics Init initWithBytes:objCType:)] pub unsafe fn initWithBytes_objCType( this: Allocated, value: NonNull, r#type: NonNull, ) -> Retained; } ); extern_methods!( /// Methods declared on superclass `NSObject` #[cfg(feature = "NSValue")] unsafe impl NSDecimalNumber { #[method_id(@__retain_semantics Init init)] pub unsafe fn init(this: Allocated) -> Retained; #[method_id(@__retain_semantics New new)] pub unsafe fn new() -> Retained; } ); extern_class!( #[derive(Debug, PartialEq, Eq, Hash)] pub struct NSDecimalNumberHandler; unsafe impl ClassType for NSDecimalNumberHandler { type Super = NSObject; type Mutability = InteriorMutable; } ); unsafe impl Send for NSDecimalNumberHandler {} unsafe impl Sync for NSDecimalNumberHandler {} #[cfg(feature = "NSObject")] unsafe impl NSCoding for NSDecimalNumberHandler {} unsafe impl NSDecimalNumberBehaviors for NSDecimalNumberHandler {} unsafe impl NSObjectProtocol for NSDecimalNumberHandler {} extern_methods!( unsafe impl NSDecimalNumberHandler { #[method_id(@__retain_semantics Other defaultDecimalNumberHandler)] pub unsafe fn defaultDecimalNumberHandler() -> Retained; #[cfg(feature = "NSDecimal")] #[method_id(@__retain_semantics Init initWithRoundingMode:scale:raiseOnExactness:raiseOnOverflow:raiseOnUnderflow:raiseOnDivideByZero:)] pub unsafe fn initWithRoundingMode_scale_raiseOnExactness_raiseOnOverflow_raiseOnUnderflow_raiseOnDivideByZero( this: Allocated, rounding_mode: NSRoundingMode, scale: c_short, exact: bool, overflow: bool, underflow: bool, divide_by_zero: bool, ) -> Retained; #[cfg(feature = "NSDecimal")] #[method_id(@__retain_semantics Other decimalNumberHandlerWithRoundingMode:scale:raiseOnExactness:raiseOnOverflow:raiseOnUnderflow:raiseOnDivideByZero:)] pub unsafe fn decimalNumberHandlerWithRoundingMode_scale_raiseOnExactness_raiseOnOverflow_raiseOnUnderflow_raiseOnDivideByZero( rounding_mode: NSRoundingMode, scale: c_short, exact: bool, overflow: bool, underflow: bool, divide_by_zero: bool, ) -> Retained; } ); extern_methods!( /// Methods declared on superclass `NSObject` unsafe impl NSDecimalNumberHandler { #[method_id(@__retain_semantics Init init)] pub unsafe fn init(this: Allocated) -> Retained; #[method_id(@__retain_semantics New new)] pub unsafe fn new() -> Retained; } ); extern_methods!( /// NSDecimalNumberExtensions #[cfg(feature = "NSValue")] unsafe impl NSNumber { #[cfg(feature = "NSDecimal")] #[method(decimalValue)] pub unsafe fn decimalValue(&self) -> NSDecimal; } ); extern_methods!( /// NSDecimalNumberScanning #[cfg(feature = "NSScanner")] unsafe impl NSScanner { #[cfg(feature = "NSDecimal")] #[method(scanDecimal:)] pub unsafe fn scanDecimal(&self, dcm: *mut NSDecimal) -> bool; } );