clang: include/clang/Lex/TokenConcatenation.h Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_CLANG_LEX_TOKENCONCATENATION_H

14#define LLVM_CLANG_LEX_TOKENCONCATENATION_H

15

17

19 class Preprocessor;

20 class Token;

21

22

23

24

25

26

27

28

29

32

33 enum AvoidConcatInfo {

34

35

36 aci_never_avoid_concat = 0,

37

38

39

40

41 aci_custom_firstchar = 1,

42

43

44

45

46 aci_custom = 2,

47

48

49

50 aci_avoid_equal = 4

51 };

52

53

54

55

57 public:

59

61 const Token &PrevTok,

62 const Token &Tok) const;

63

64 private:

65

66

67 bool IsIdentifierStringPrefix(const Token &Tok) const;

68 };

69 }

70

71#endif

Defines the clang::TokenKind enum and support functions.

Engages in a tight little dance with the lexer to efficiently preprocess tokens.

TokenConcatenation class, which answers the question of "Is it safe to emit two tokens without a whit...

bool AvoidConcat(const Token &PrevPrevTok, const Token &PrevTok, const Token &Tok) const

AvoidConcat - If printing PrevTok immediately followed by Tok would cause the two individual tokens t...

Token - This structure provides full information about a lexed token.

The JSON file list parser is used to communicate input to InstallAPI.