Vuo 2.4.2
Loading...
Searching...
No Matches
VuoCompilerIssue.hh
Go to the documentation of this file.
1
10#pragma once
11
12class VuoCable;
13class VuoModule;
14class VuoNode;
15
20{
21public:
26 {
28 Warning
29 };
30
31 VuoCompilerIssue(void);
32 VuoCompilerIssue(IssueType issueType, const string &action, const string &filePath, const string &summary, const string &details);
34 string getSummary(void);
35 string getDetails(bool htmlFormatted) const;
36 string getShortDescription(bool htmlFormatted) const;
37 string getLongDescription(bool htmlFormatted);
38 void setHint(const string &hint);
39 string getHint(bool htmlFormatted);
40 void setHelpPath(const string &path);
41 string getHelpPath(void);
42 void setFilePath(const string &filePath);
43 string getFilePath(void);
44 void setLineNumber(int lineNumber);
45 int getLineNumber(void);
46 void setModuleKey(const string &moduleKey);
47 void setLink(const string &url, const string &text);
48 void setModule(VuoModule *module);
49 void setNode(VuoNode *node);
50 void setNodes(const set<VuoNode *> &nodes);
51 set<VuoNode *> getNodes(void);
52 void setCables(const set<VuoCable *> &cables);
53 set<VuoCable *> getCables(void);
54 long getHash(void);
55
56private:
57 string getIssueTypeString(void);
58 string fillInPlaceholders(const string &s, bool htmlFormatted) const;
59
60 IssueType issueType;
61 string action;
62 string summary;
63 string details;
64 string hint;
65 string helpPath;
66 string filePath;
67 int lineNumber;
68 string moduleKey;
69 string linkUrl;
70 string linkText;
71 VuoModule *module;
72 set<VuoNode *> nodes;
73 set<VuoCable *> cables;
74};
75
82{
83public:
86 string getShortDescription(bool htmlFormatted);
87 string getLongDescription(bool htmlFormatted);
88 string getHint(bool htmlFormatted);
89 void setFilePathIfEmpty(const string &filePath);
90 void setFilePath(const string &filePath);
91 void append(const VuoCompilerIssue &issue);
92 void append(VuoCompilerIssues *otherIssues);
93 bool isEmpty(void);
94 vector<VuoCompilerIssue> getList(void);
96
97private:
98 vector<VuoCompilerIssue> issues;
99};