eĿlipsis
a language independent preprocessor
 
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Loading...
Searching...
No Matches
ellipsis-category.h File Reference
#include <ctype.h>
#include <stddef.h>
#include "utils/ellipsis-error.h"
Include dependency graph for ellipsis-category.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef unsigned char ellipsis‿category‿base
 
typedef enum ellipsis‿category ellipsis‿category
 

Enumerations

enum  : size_t { ellipsis‿category‿max_intern = 28 }
 
enum  ellipsis‿category : ellipsis‿category‿base {
  none , character , comment , code ,
  codeblock , directive , macro , removed ,
  frozen , keyword , nominal , numeral ,
  parameter , stringifier , exp_signed , exp_unsigned ,
  string , verbatim , binary , base64 ,
  punctuator , peek , keep , paragraph ,
  item , special
}
 An enumeration type ellipsis‿category with the underlying integer type ellipsis‿category‿base. More...
 

Functions

char const * ellipsis‿category‿getname (size_t __LOC_ID_0_1)
 Return the name of the enumeration constant of type ellipsis‿category at position n, if any.
 
bool ellipsis‿category‿is_multiline (ellipsis‿category v)
 True, if v is possibly a multi-line construct.
 

Variables

char const *const *const ellipsis‿category‿names
 An array with the names of the constants of type ellipsis‿category.
 
static char const *const ellipsis‿category‿namesbuf_intern [ellipsis‿category‿max_intern]
 
constexpr size_t ellipsis‿category‿width = 5
 

Detailed Description

Warning
This is a file generated by eĿlipsis version 20250309, do not modify

This implements an enumeration that categorizes tokens in any way as eĿlipsis needs it. Some of these are just used internally.

Warning
This is a file generated by eĿlipsis version 20250309, do not modify

Typedef Documentation

◆ ellipsis‿category‿base

typedef unsigned char ellipsis‿category‿base

◆ ellipsis‿category

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : size_t
Enumerator
ellipsis‿category‿max_intern 

◆ ellipsis‿category

An enumeration type ellipsis‿category with the underlying integer type ellipsis‿category‿base.

Enumerator
none 
character 

a character token

comment 

comment, possibly multiline

code 

code in floating text

codeblock 

code in its own paragraph

directive 

a directive

macro 

an active macro

removed 

a macro that has been undef

frozen 

a macro that cannot be undef

keyword 

not yet used

nominal 

identifier-like token

numeral 

number-like token

parameter 

function or macro parameter

stringifier 

internal

exp_signed 

an integer with sign

exp_unsigned 

an integer without sign

string 

an ordinary string

verbatim 

a verbatim "raw" string

binary 

an binary encoded string

base64 

an base64 encoded string

punctuator 

a punctuator

peek 

reenable filtering, end escape

keep 

escape from filtering

paragraph 

a start of a paragraph

item 

a start of a item

special 

a special construct

Function Documentation

◆ ellipsis‿category‿getname()

char const * ellipsis‿category‿getname ( size_t  __LOC_ID_0_1)
inline

Return the name of the enumeration constant of type ellipsis‿category at position n, if any.

Beware that this is not necessarily the value of the enumeration constant.

See also
ellipsis‿category

References ellipsis‿category‿max_intern, and ellipsis‿category‿names.

Referenced by ellipsis‿category‿_Once‿init‿user(), ellipsis‿include‿process(), ellipsis‿output‿vrbs(), and ellipsis‿tokenize().

Here is the caller graph for this function:

◆ ellipsis‿category‿is_multiline()

bool ellipsis‿category‿is_multiline ( ellipsis‿category  v)
inline

True, if v is possibly a multi-line construct.

Remarks
This translation unit implements ellipsis‿category::ellipsis‿category‿getname

References comment, and verbatim.

Referenced by ellipsis‿filter().

Here is the caller graph for this function:

Variable Documentation

◆ ellipsis‿category‿names

char const* const* const ellipsis‿category‿names
extern

An array with the names of the constants of type ellipsis‿category.

Referenced by ellipsis‿category‿getname().

◆ ellipsis‿category‿namesbuf_intern

char const* const ellipsis‿category‿namesbuf_intern[ellipsis‿category‿max_intern]
static
Initial value:
= {
"none",
"character" ,
"comment" ,
"code" ,
"codeblock" ,
"directive" ,
"macro" ,
"removed" ,
"frozen" ,
"keyword" ,
"nominal" ,
"numeral" ,
"parameter" ,
"stringifier" ,
"exp_signed" ,
"exp_unsigned" ,
"string" ,
"verbatim" ,
"binary" ,
"base64" ,
"punctuator" ,
"peek" ,
"keep" ,
"paragraph" ,
"item" ,
"special"
}

◆ ellipsis‿category‿width

constexpr size_t ellipsis‿category‿width = 5
constexpr