Yoga 3.1.0

Yoga 3.1.0

测试已测试
语言语言 CC
许可证 MIT
发布最新发布2024年6月

Facebook, Inc.Dustin ShahidehpourNick GerlemanCipolleschi 维护。



Yoga 3.1.0

  • Meta Open Source

Yoga Support Ukraine CocoaPods npm Maven Central

Yoga 是一个可嵌入且性能优秀的灵活盒子布局引擎,支持多种语言的绑定。

构建

Yoga 的主要实现针对 C++ 14,并附带 CMake 中的配套构建逻辑。提供了一个包装器来构建主要库和运行单元测试。

./unit_tests <Debug|Release>

虽然不是必须的,但该脚本会在安装 ninja 后使用它进行更快的构建。

瑜伽也是由微软和社区贡献者维护的vcpkg端口集合的一部分。

如果版本过时,请在vcpkg仓库中创建一个问题或pull请求。

Yoga的大多数测试都是自动生成的,使用描述节点结构的HTML固定文件。这些文件在Chrome中渲染,以生成树的预期布局结果。

<div id="my_test" style="width: 100px; height: 100px; align-items: center;">
  <div style="width: 50px; height: 50px;"></div>
</div>

要从添加的固定文件生成新的测试:

  1. 在gentest目录中运行bundle install以安装测试生成器的依赖项。
  2. 在gentest目录中运行ruby gentest.rb

调试

Yoga提供了一个VSCode "launch.json"配置,允许调试单元测试。只需添加您的断点,然后运行“调试C++单元测试(lldb)”