/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #include #include "./Config.hh" /* static */ Config* Config::create(void) { return new Config(); } /* static */ void Config::destroy(Config* node) { delete node; } Config::Config(void) : m_config(YGConfigNew()) {} Config::~Config(void) { YGConfigFree(m_config); } void Config::setExperimentalFeatureEnabled(int feature, bool enabled) { YGConfigSetExperimentalFeatureEnabled( m_config, static_cast(feature), enabled); } void Config::setPointScaleFactor(float pixelsInPoint) { YGConfigSetPointScaleFactor(m_config, pixelsInPoint); } void Config::setUseLegacyStretchBehaviour(bool useLegacyStretchBehaviour) { YGConfigSetUseLegacyStretchBehaviour(m_config, useLegacyStretchBehaviour); } void Config::setUseWebDefaults(bool useWebDefaults) { YGConfigSetUseWebDefaults(m_config, useWebDefaults); } bool Config::isExperimentalFeatureEnabled(int feature) const { return YGConfigIsExperimentalFeatureEnabled( m_config, static_cast(feature)); } bool Config::useLegacyStretchBehaviour() { return YGConfigGetUseLegacyStretchBehaviour(m_config); } bool Config::useWebDefaults() { return YGConfigGetUseWebDefaults(m_config); }