blob: d65f250417a7c7b21eba90f6b677e5873271aed9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
/**
* @file check_template.h
* prototypes for check_template.cpp
*
* splitted from tokenize_cleanup.cpp
*
* @author Guy Maurel 2022
* @license GPL v2+
*/
#ifndef CHECK_TEMPLATE_H_INCLUDED
#define CHECK_TEMPLATE_H_INCLUDED
#include "uncrustify_types.h"
/**
* Mark types in a single template argument.
*
* @param start chunk to start check at
* @param end chunk to end check at
*/
void check_template_arg(Chunk *start, Chunk *end);
/**
* Mark types in template argument(s).
*
* @param start chunk to start check at
* @param end chunk to end check at
*/
void check_template_args(Chunk *start, Chunk *end);
/**
* If there is nothing but CT_WORD and CT_MEMBER, then it's probably a
* template thingy. Otherwise, it's likely a comparison.
*
* @param start chunk to start check at
*/
void check_template(Chunk *start, bool in_type_cast);
/**
* Convert '>' + '>' into '>>'
* If we only have a single '>', then change it to CT_COMPARE.
*
* @param pc chunk to start at
*/
Chunk *handle_double_angle_close(Chunk *pc);
bool invalid_open_angle_template(Chunk *prev);
#endif /* CHECK_TEMPLATE_H_INCLUDED */
|