objc2_metric_kit/generated/MXCallStackTree.rs
1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9extern_class!(
10 /// A data class that encapsulates call stack trees vended by MetricKit.
11 ///
12 /// You should use the JSONRepresentation API to generate human readable call stack trees for symbolication off device.
13 ///
14 /// See also [Apple's documentation](https://developer.apple.com/documentation/metrickit/mxcallstacktree?language=objc)
15 #[unsafe(super(NSObject))]
16 #[derive(Debug, PartialEq, Eq, Hash)]
17 pub struct MXCallStackTree;
18);
19
20extern_conformance!(
21 unsafe impl NSCoding for MXCallStackTree {}
22);
23
24extern_conformance!(
25 unsafe impl NSObjectProtocol for MXCallStackTree {}
26);
27
28extern_conformance!(
29 unsafe impl NSSecureCoding for MXCallStackTree {}
30);
31
32impl MXCallStackTree {
33 extern_methods!(
34 /// Convenience method to return a JSON representation of this callstack tree.
35 ///
36 /// The JSON structure of MXCallStackTree is organized into individual groups of call stacks. Individual call stacks contain stack frames, which consist of information needed to symbolicate the frame off device. This includes binary image name, binary UUID, offset in binary text segment, address, and sample count (for stack trees that contain temporally sampled data.)
37 ///
38 /// MXCallStackTrees can be organized into a single callstack for the entire application, or broken up into callstacks associated with individual threads.
39 ///
40 /// Returns: An NSData object containing the JSON representation
41 #[unsafe(method(JSONRepresentation))]
42 #[unsafe(method_family = none)]
43 pub unsafe fn JSONRepresentation(&self) -> Retained<NSData>;
44 );
45}
46
47/// Methods declared on superclass `NSObject`.
48impl MXCallStackTree {
49 extern_methods!(
50 #[unsafe(method(init))]
51 #[unsafe(method_family = init)]
52 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
53
54 #[unsafe(method(new))]
55 #[unsafe(method_family = new)]
56 pub unsafe fn new() -> Retained<Self>;
57 );
58}