| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
refactor: 更新 clang-format 规范并对全量代码进行格式化 Co-authored-by: songkai111<songkai16@huawei.com> # message auto-generated for no-merge-commit merge: !535 merge master into master refactor: 更新 clang-format 规范并对全量代码进行格式化 Created-by: songkai111 Commit-by: songkai111 Merged-by: cann-robot Description: ## 描述 本 PR 更新 .clang-format 格式化规范配置,并依据新规则对全量代码进行格式化重排,同时调整 classify_rule.yaml 中 op_host 目录的归属。 ### 改动原因 - 原 AlignAfterOpenBracket: AlwaysBreak 规则会在左括号后强制换行,导致部分本可单行容纳的函数声明/调用被拆散,降低代码可读性。 - 调整为 Align 并新增 PenaltyBreakAssignment: 1000,使格式化器优先在左括号后对齐参数,仅在超长时才换行。 - ops-base/include/op_common/op_host/ 目录维护责任由 HPTG2 团队调整至 VC2 团队,在 classify_rule.yaml 中同步更新归属。 ### 改动方法 1. 修改 .clang-format:AlignAfterBracket 由 AlwaysBreak 改为 Align,新增 PenaltyBreakAssignment: 1000。 2. 修改 classify_rule.yaml:将 ops-base/include/op_common/op_host/ 从 HPTG2@ops-base 的 release style 列表移除,加入 VC2@ops-base 的 release style 列表。 3. 依据新的 .clang-format 规则对以下范围共 282 个文件进行全量格式化(+10422 / -12142): - 测试文件(tests/):61 个 - composite_op(src/nnopbase/composite_op/):43 个 - atvoss(pkg_inc/op_common/atvoss/):43 个 - 头文件(include/):32 个 - individual_op(src/nnopbase/individual_op/):31 个 - common(src/nnopbase/common/):28 个 - aicpu_common(pkg_inc/op_common/aicpu_common/):24 个 - op_common/aicpu 源码(src/op_common/、src/nnopbase/aicpu/):16 个 - 其他(aicpu_common/context 等):4 个 主要格式化变化:指针/引用贴类型名(const void* const、const auto&)、模板尖括号前加空格(template <typename T>)、单行可容纳的函数体折叠为一行、函数参数在左括号后对齐而非强制换行、宏续行符统一对齐。 ## 关联的Issue - #226 ## 测试 纯代码格式化变更,不涉及逻辑修改;通过编译验证及存量单元测试(ut)/二级冒烟测试(st)验证格式化未改变代码语义。 ## 文档更新 无文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化规范重构 See merge request: cann/opbase!535 | 2 个月前 | |
data_type_utils.h: CheckType/ToString 扩展支持 std::vector 与 std::array 重载 Co-authored-by: ren-botao<renbotao@h-partners.com> # message auto-generated for no-merge-commit merge: !823 merge check_type_vector into master data_type_utils.h: CheckType/ToString 扩展支持 std::vector 与 std::array 重载 Created-by: ren-botao Commit-by: ren-botao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> data_type_utils.h: CheckType/ToString 扩展支持 std::vector 与 std::array 重载 为支持业务仓改用拥有型/编译期容器(如 inline constexpr std::array),同时复用现有 OP_CHECK_DTYPE_NOT_SUPPORT 宏而无需新增 _FOR_VEC 变体宏,在 opbase 层扩展CheckType 与 ToString 的重载集: 1. CheckType 新增 std::array<DataType, N> 与 std::vector<DataType> 重载,行为与 initializer_list 版一致(std::find 线性查找,空列表返回 false)。 2. ToString 新增 std::array 与 std::vector 重载,输出格式为 [A,B](无尾随逗号); initializer_list 版维持原 [A,B,] 格式不变,避免破坏存量日志。 3. 统一 CheckType 三个重载的参数命名为 validTypes(原 valid_types)。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#256](https://gitcode.com/cann/opbase/issues/256) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 新增 CheckTypeContainerOverloads、ToStringContainerOverloads 单元测试,期望值基于代码逻辑推导。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 补充 zh/en 接口文档,说明三个重载的声明与 ToString 新旧版格式差异。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/opbase!823 | 3 天前 |