chromium/third_party/skia/src/sksl/ir/SkSLSetting.h

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

#ifndef SKSL_SETTING
#define SKSL_SETTING

#include "src/sksl/SkSLPosition.h"
#include "src/sksl/SkSLUtil.h"
#include "src/sksl/ir/SkSLExpression.h"
#include "src/sksl/ir/SkSLIRNode.h"

#include <cstdint>
#include <memory>
#include <string>
#include <string_view>


namespace SkSL {

class Context;
class Type;
enum class OperatorPrecedence : uint8_t;

/**
 * Represents a compile-time constant setting, such as sk_Caps.integerSupport. These IRNodes are
 * used when assembling a module. These nodes are replaced with the value of the setting during
 * compilation when ShaderCaps are available.
 */
class Setting final : public Expression {};

}  // namespace SkSL

#endif