1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
/// Represents a read or write request from a central.
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbattrequest?language=objc)
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct CBATTRequest;
);
extern_conformance!(
unsafe impl NSObjectProtocol for CBATTRequest {}
);
impl CBATTRequest {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[cfg(all(feature = "CBCentral", feature = "CBPeer"))]
/// The central that originated the request.
#[unsafe(method(central))]
#[unsafe(method_family = none)]
pub unsafe fn central(&self) -> Retained<CBCentral>;
#[cfg(all(feature = "CBAttribute", feature = "CBCharacteristic"))]
/// The characteristic whose value will be read or written.
#[unsafe(method(characteristic))]
#[unsafe(method_family = none)]
pub unsafe fn characteristic(&self) -> Retained<CBCharacteristic>;
/// The zero-based index of the first byte for the read or write.
#[unsafe(method(offset))]
#[unsafe(method_family = none)]
pub unsafe fn offset(&self) -> NSUInteger;
/// The data being read or written.
/// For read requests,
/// <i>
/// value
/// </i>
/// will be nil and should be set before responding via
///
/// ```text
/// respondToRequest:withResult:
/// ```
///
/// .
/// For write requests,
/// <i>
/// value
/// </i>
/// will contain the data to be written.
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> Option<Retained<NSData>>;
/// Setter for [`value`][Self::value].
///
/// This is [copied][objc2_foundation::NSCopying::copy] when set.
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: Option<&NSData>);
);
}
/// Methods declared on superclass `NSObject`.
impl CBATTRequest {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}