Lines Matching refs:SourceRange
16 struct SourceRange {
17 SourceRange() : SourceRange(kNoSourcePosition, kNoSourcePosition) {}
18 SourceRange(int start, int end) : start(start), end(end) {}
20 static SourceRange Empty() { return SourceRange(); }
21 static SourceRange OpenEnded(int32_t start) {
22 return SourceRange(start, kNoSourcePosition);
24 static SourceRange ContinuationOf(const SourceRange& that,
26 return that.IsEmpty() ? Empty() : SourceRange(that.end, end);
36 static SourceRange FunctionLiteralMarkerRange() {
75 virtual SourceRange GetRange(SourceRangeKind kind) = 0;
82 explicit BinaryOperationSourceRanges(const SourceRange& right_range)
85 SourceRange GetRange(SourceRangeKind kind) override {
95 SourceRange right_range_;
103 SourceRange GetRange(SourceRangeKind kind) override {
105 return SourceRange::OpenEnded(continuation_position_);
129 explicit CaseClauseSourceRanges(const SourceRange& body_range)
132 SourceRange GetRange(SourceRangeKind kind) override {
142 SourceRange body_range_;
147 explicit ConditionalSourceRanges(const SourceRange& then_range,
148 const SourceRange& else_range)
151 SourceRange GetRange(SourceRangeKind kind) override {
168 SourceRange then_range_;
169 SourceRange else_range_;
174 SourceRange GetRange(SourceRangeKind kind) override {
176 return SourceRange::FunctionLiteralMarkerRange();
186 explicit IfStatementSourceRanges(const SourceRange& then_range,
187 const SourceRange& else_range)
190 SourceRange GetRange(SourceRangeKind kind) override {
198 if (!has_continuation_) return SourceRange::Empty();
199 const SourceRange& trailing_range =
201 return SourceRange::ContinuationOf(trailing_range);
219 SourceRange then_range_;
220 SourceRange else_range_;
226 explicit IterationStatementSourceRanges(const SourceRange& body_range)
229 SourceRange GetRange(SourceRangeKind kind) override {
235 if (!has_continuation_) return SourceRange::Empty();
236 return SourceRange::ContinuationOf(body_range_);
253 SourceRange body_range_;
265 NaryOperationSourceRanges(Zone* zone, const SourceRange& range)
270 SourceRange GetRangeAtIndex(size_t index) {
275 void AddRange(const SourceRange& range) { ranges_.push_back(range); }
278 SourceRange GetRange(SourceRangeKind kind) override { UNREACHABLE(); }
282 ZoneVector<SourceRange> ranges_;
287 explicit ExpressionSourceRanges(const SourceRange& right_range)
290 SourceRange GetRange(SourceRangeKind kind) override {
300 SourceRange right_range_;
323 explicit TryCatchStatementSourceRanges(const SourceRange& catch_range)
326 SourceRange GetRange(SourceRangeKind kind) override {
332 if (!has_continuation_) return SourceRange::Empty();
333 return SourceRange::ContinuationOf(catch_range_);
350 SourceRange catch_range_;
356 explicit TryFinallyStatementSourceRanges(const SourceRange& finally_range)
359 SourceRange GetRange(SourceRangeKind kind) override {
365 if (!has_continuation_) return SourceRange::Empty();
366 return SourceRange::ContinuationOf(finally_range_);
383 SourceRange finally_range_;