Vuo  2.3.2
VuoCompilerException.cc
Go to the documentation of this file.
1 
10 #include "VuoCompilerException.hh"
11 #include "VuoCompilerIssue.hh"
12 
17  : VuoException(issue.getShortDescription(false), false)
18 {
19  issues = new VuoCompilerIssues(issue);
20  ownsIssues = true;
21  shortDescription = issues ? strdup(issues->getShortDescription(false).c_str()) : nullptr;
22 }
23 
31  : VuoException(issues ? issues->getShortDescription(false) : "", false)
32 {
33  this->issues = issues;
34  this->ownsIssues = ownsIssues;
35  this->shortDescription = issues ? strdup(issues->getShortDescription(false).c_str()) : nullptr;
36 }
37 
42  : VuoException(other)
43 {
44  VUserLog("This shouldn't be called. You may need to replace `throw e` with `throw`.");
45  this->issues = nullptr;
46  this->ownsIssues = false;
47  this->shortDescription = nullptr;
48 }
49 
54 {
55  if (ownsIssues)
56  delete issues;
57  free(shortDescription);
58 }
59 
64 {
65  return issues;
66 }
67 
71 const char * VuoCompilerException::what() const throw()
72 {
73  return shortDescription;
74 }