1 /* 2 * Copyright 2016 Google Inc. 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8 #ifndef SKSL_CONTINUESTATEMENT 9 #define SKSL_CONTINUESTATEMENT 10 11 #include "src/sksl/ir/SkSLExpression.h" 12 #include "src/sksl/ir/SkSLStatement.h" 13 14 namespace SkSL { 15 16 /** 17 * A 'continue' statement. 18 */ 19 class ContinueStatement final : public Statement { 20 public: 21 inline static constexpr Kind kIRNodeKind = Kind::kContinue; 22 ContinueStatement(Position pos)23 ContinueStatement(Position pos) 24 : INHERITED(pos, kIRNodeKind) {} 25 Make(Position pos)26 static std::unique_ptr<Statement> Make(Position pos) { 27 return std::make_unique<ContinueStatement>(pos); 28 } 29 description()30 std::string description() const override { 31 return "continue;"; 32 } 33 34 private: 35 using INHERITED = Statement; 36 }; 37 38 } // namespace SkSL 39 40 #endif 41