chromium/third_party/skia/src/sksl/ir/SkSLForStatement.cpp

/*
 * Copyright 2021 Google LLC
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#include "src/sksl/ir/SkSLForStatement.h"

#include "include/core/SkTypes.h"
#include "src/sksl/SkSLAnalysis.h"
#include "src/sksl/SkSLBuiltinTypes.h"
#include "src/sksl/SkSLContext.h"
#include "src/sksl/SkSLDefines.h"
#include "src/sksl/SkSLErrorReporter.h"
#include "src/sksl/SkSLProgramSettings.h"
#include "src/sksl/analysis/SkSLProgramVisitor.h"
#include "src/sksl/ir/SkSLBlock.h"
#include "src/sksl/ir/SkSLExpressionStatement.h"
#include "src/sksl/ir/SkSLNop.h"
#include "src/sksl/ir/SkSLType.h"
#include "src/sksl/ir/SkSLVarDeclarations.h"
#include "src/sksl/ir/SkSLVariable.h"

namespace SkSL {

static bool is_vardecl_block_initializer(const Statement* stmt) {}

static bool is_simple_initializer(const Statement* stmt) {}

std::string ForStatement::description() const {}

static void hoist_vardecl_symbols_into_outer_scope(const Context& context,
                                                   const Block& initBlock,
                                                   SymbolTable* innerSymbols,
                                                   SymbolTable* hoistedSymbols) {}

std::unique_ptr<Statement> ForStatement::Convert(const Context& context,
                                                 Position pos,
                                                 ForLoopPositions positions,
                                                 std::unique_ptr<Statement> initializer,
                                                 std::unique_ptr<Expression> test,
                                                 std::unique_ptr<Expression> next,
                                                 std::unique_ptr<Statement> statement,
                                                 std::unique_ptr<SymbolTable> symbolTable) {}

std::unique_ptr<Statement> ForStatement::ConvertWhile(const Context& context,
                                                      Position pos,
                                                      std::unique_ptr<Expression> test,
                                                      std::unique_ptr<Statement> statement) {}

std::unique_ptr<Statement> ForStatement::Make(const Context& context,
                                              Position pos,
                                              ForLoopPositions positions,
                                              std::unique_ptr<Statement> initializer,
                                              std::unique_ptr<Expression> test,
                                              std::unique_ptr<Expression> next,
                                              std::unique_ptr<Statement> statement,
                                              std::unique_ptr<LoopUnrollInfo> unrollInfo,
                                              std::unique_ptr<SymbolTable> symbolTable) {}

}  // namespace SkSL