chromium/third_party/blink/renderer/platform/fonts/shaping/stretchy_operator_shaper.cc

// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "third_party/blink/renderer/platform/fonts/shaping/stretchy_operator_shaper.h"

#include <hb-ot.h>
#include <hb.h>
#include <unicode/uchar.h>

#include "base/numerics/safe_conversions.h"
#include "third_party/blink/renderer/platform/fonts/canvas_rotation_in_vertical.h"
#include "third_party/blink/renderer/platform/fonts/font.h"
#include "third_party/blink/renderer/platform/fonts/opentype/open_type_math_support.h"
#include "third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h"
#include "third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h"
#include "third_party/blink/renderer/platform/wtf/text/unicode.h"
#include "ui/gfx/geometry/rect_f.h"
#include "ui/gfx/geometry/skia_conversions.h"

namespace blink {

namespace {

// HarfBuzz' hb_position_t is a 16.16 fixed-point value.
inline float HarfBuzzUnitsToFloat(hb_position_t value) {}

std::optional<OpenTypeMathStretchData::AssemblyParameters>
GetAssemblyParameters(const HarfBuzzFace* harfbuzz_face,
                      Glyph base_glyph,
                      OpenTypeMathStretchData::StretchAxis stretch_axis,
                      float target_size,
                      float* italic_correction) {}

}  // namespace

const ShapeResult* StretchyOperatorShaper::Shape(const Font* font,
                                                 float target_size,
                                                 Metrics* metrics) const {}

}  // namespace blink