Skip to content

Commit 6436bcd

Browse files
committed
AST: Add AnyRequest::isDependencySource()
1 parent c3fd558 commit 6436bcd

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

include/swift/AST/AnyRequest.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ struct AnyRequestVTable {
8383
const std::function<void(const void *, DiagnosticEngine &)> noteCycleStep;
8484
const std::function<SourceLoc(const void *)> getNearestLoc;
8585
const std::function<bool(const void *)> isCached;
86+
bool isDependencySource;
8687

8788
template <typename Request,
8889
typename std::enable_if<Request::isEverCached>::type * = nullptr>
@@ -99,6 +100,7 @@ struct AnyRequestVTable {
99100
&Impl<Request>::noteCycleStep,
100101
&Impl<Request>::getNearestLoc,
101102
&Impl<Request>::isCached,
103+
Request::isDependencySource,
102104
};
103105
return &vtable;
104106
}
@@ -118,6 +120,7 @@ struct AnyRequestVTable {
118120
&Impl<Request>::noteCycleStep,
119121
&Impl<Request>::getNearestLoc,
120122
[](auto){ return false; },
123+
Request::isDependencySource,
121124
};
122125
return &vtable;
123126
}
@@ -224,6 +227,10 @@ class AnyRequestBase {
224227
return getVTable()->isCached(getRawStorage());
225228
}
226229

230+
bool isDependencySource() const {
231+
return getVTable()->isDependencySource;
232+
}
233+
227234
/// Compare two instances for equality.
228235
friend bool operator==(const AnyRequestBase<Derived> &lhs,
229236
const AnyRequestBase<Derived> &rhs) {

0 commit comments

Comments
 (0)