19 #ifndef UNITY_SCOPES_ANNOTATION_H
20 #define UNITY_SCOPES_ANNOTATION_H
22 #include <unity/scopes/Variant.h>
23 #include <unity/scopes/Link.h>
24 #include <unity/util/DefinesPtrs.h>
38 class ResultReplyObject;
41 namespace experimental
48 class Annotation final
52 UNITY_DEFINES_PTRS(Annotation);
68 explicit Annotation(Type atype);
74 Annotation(Annotation
const &other);
75 Annotation(Annotation&&);
76 Annotation& operator=(Annotation
const& other);
77 Annotation& operator=(Annotation&&);
81 virtual ~Annotation();
87 void set_label(std::string
const& label);
92 void set_icon(std::string
const& icon);
100 void add_link(std::string
const& label, CannedQuery
const& query);
106 std::string label()
const;
112 std::string icon()
const;
118 std::list<Link::SCPtr> links()
const;
124 Type annotation_type()
const;
131 Annotation(internal::AnnotationImpl* impl);
132 std::unique_ptr<internal::AnnotationImpl> p;
134 friend class internal::ResultReplyObject;
Top-level namespace for all things Unity-related.
Definition: Version.h:50
std::map< std::string, Variant > VariantMap
A dictionary of (string, Variant) pairs.
Definition: Variant.h:39
Definition: ActionMetadata.h:32