Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Harfbuzz
提交
7e02063f
T
Third Party Harfbuzz
项目概览
OpenHarmony
/
Third Party Harfbuzz
接近 2 年 前同步成功
通知
1
Star
18
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Harfbuzz
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
7e02063f
编写于
5月 13, 2019
作者:
B
Behdad Esfahbod
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[iter] Minor
上级
a5fb44a8
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
10 deletion
+11
-10
src/hb-iter.hh
src/hb-iter.hh
+11
-10
未找到文件。
src/hb-iter.hh
浏览文件 @
7e02063f
...
@@ -345,13 +345,13 @@ operator | (Lhs&& lhs, Rhs&& rhs) HB_AUTO_RETURN (hb_forward<Rhs> (rhs) (hb_forw
...
@@ -345,13 +345,13 @@ operator | (Lhs&& lhs, Rhs&& rhs) HB_AUTO_RETURN (hb_forward<Rhs> (rhs) (hb_forw
/* hb_map(), hb_filter(), hb_reduce() */
/* hb_map(), hb_filter(), hb_reduce() */
enum
sorted
_t
{
enum
class
hb_function_sortedness
_t
{
NOT_SORTED
,
NOT_SORTED
,
RETAINS_SORTING
,
RETAINS_SORTING
,
SORTED
,
SORTED
,
};
};
template
<
typename
Iter
,
typename
Proj
,
sorted
_t
Sorted
,
template
<
typename
Iter
,
typename
Proj
,
hb_function_sortedness
_t
Sorted
,
hb_requires
(
hb_is_iterator
(
Iter
))>
hb_requires
(
hb_is_iterator
(
Iter
))>
struct
hb_map_iter_t
:
struct
hb_map_iter_t
:
hb_iter_t
<
hb_map_iter_t
<
Iter
,
Proj
,
Sorted
>
,
hb_iter_t
<
hb_map_iter_t
<
Iter
,
Proj
,
Sorted
>
,
...
@@ -362,7 +362,8 @@ struct hb_map_iter_t :
...
@@ -362,7 +362,8 @@ struct hb_map_iter_t :
typedef
decltype
(
hb_get
(
hb_declval
(
Proj
),
*
hb_declval
(
Iter
)))
__item_t__
;
typedef
decltype
(
hb_get
(
hb_declval
(
Proj
),
*
hb_declval
(
Iter
)))
__item_t__
;
static
constexpr
bool
is_random_access_iterator
=
Iter
::
is_random_access_iterator
;
static
constexpr
bool
is_random_access_iterator
=
Iter
::
is_random_access_iterator
;
static
constexpr
bool
is_sorted_iterator
=
static
constexpr
bool
is_sorted_iterator
=
Sorted
==
SORTED
?
true
:
Sorted
==
RETAINS_SORTING
?
Iter
::
is_sorted_iterator
:
false
;
Sorted
==
hb_function_sortedness_t
::
SORTED
?
true
:
Sorted
==
hb_function_sortedness_t
::
RETAINS_SORTING
?
Iter
::
is_sorted_iterator
:
false
;
__item_t__
__item__
()
const
{
return
hb_get
(
f
.
get
(),
*
it
);
}
__item_t__
__item__
()
const
{
return
hb_get
(
f
.
get
(),
*
it
);
}
__item_t__
__item_at__
(
unsigned
i
)
const
{
return
hb_get
(
f
.
get
(),
it
[
i
]);
}
__item_t__
__item_at__
(
unsigned
i
)
const
{
return
hb_get
(
f
.
get
(),
it
[
i
]);
}
bool
__more__
()
const
{
return
bool
(
it
);
}
bool
__more__
()
const
{
return
bool
(
it
);
}
...
@@ -380,7 +381,7 @@ struct hb_map_iter_t :
...
@@ -380,7 +381,7 @@ struct hb_map_iter_t :
hb_reference_wrapper
<
Proj
>
f
;
hb_reference_wrapper
<
Proj
>
f
;
};
};
template
<
typename
Proj
,
sorted
_t
Sorted
>
template
<
typename
Proj
,
hb_function_sortedness
_t
Sorted
>
struct
hb_map_iter_factory_t
struct
hb_map_iter_factory_t
{
{
hb_map_iter_factory_t
(
Proj
f
)
:
f
(
f
)
{}
hb_map_iter_factory_t
(
Proj
f
)
:
f
(
f
)
{}
...
@@ -397,25 +398,25 @@ struct hb_map_iter_factory_t
...
@@ -397,25 +398,25 @@ struct hb_map_iter_factory_t
struct
struct
{
{
template
<
typename
Proj
>
template
<
typename
Proj
>
hb_map_iter_factory_t
<
Proj
,
NOT_SORTED
>
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
NOT_SORTED
>
operator
()
(
Proj
&&
f
)
const
operator
()
(
Proj
&&
f
)
const
{
return
hb_map_iter_factory_t
<
Proj
,
NOT_SORTED
>
(
f
);
}
{
return
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
NOT_SORTED
>
(
f
);
}
}
}
HB_FUNCOBJ
(
hb_map
);
HB_FUNCOBJ
(
hb_map
);
struct
struct
{
{
template
<
typename
Proj
>
template
<
typename
Proj
>
hb_map_iter_factory_t
<
Proj
,
SORTED
>
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
RETAINS_SORTING
>
operator
()
(
Proj
&&
f
)
const
operator
()
(
Proj
&&
f
)
const
{
return
hb_map_iter_factory_t
<
Proj
,
RETAINS_SORTING
>
(
f
);
}
{
return
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
RETAINS_SORTING
>
(
f
);
}
}
}
HB_FUNCOBJ
(
hb_map_retains_sorting
);
HB_FUNCOBJ
(
hb_map_retains_sorting
);
struct
struct
{
{
template
<
typename
Proj
>
template
<
typename
Proj
>
hb_map_iter_factory_t
<
Proj
,
SORTED
>
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
SORTED
>
operator
()
(
Proj
&&
f
)
const
operator
()
(
Proj
&&
f
)
const
{
return
hb_map_iter_factory_t
<
Proj
,
SORTED
>
(
f
);
}
{
return
hb_map_iter_factory_t
<
Proj
,
hb_function_sortedness_t
::
SORTED
>
(
f
);
}
}
}
HB_FUNCOBJ
(
hb_map_sorted
);
HB_FUNCOBJ
(
hb_map_sorted
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录