Module: CExtractorConstants
- Included in:
- CExtractor, CExtractorCodeText, CExtractorDeclarations, CExtractorFunctions
- Defined in:
- lib/ceedling/c_extractor/c_extractor_constants.rb
Overview
=========================================================================
Ceedling - Test-Centered Build System for C ThrowTheSwitch.org Copyright (c) 2010-26 Mike Karlesky, Mark VanderVoord, & Greg Williams SPDX-License-Identifier: MIT
Constant Summary collapse
- DEFAULT_MAX_LINE_LENGTH =
1000 character safety limit
1000- DEFAULT_CHUNK_SIZE =
16 KB -- enough for most functions
(16 * 1024)
- DEFAULT_MAX_FUNCTION_LENGTH =
5 MB mega-length safety limit
(5 * 1024 * 1024)
- PRIVATE_KEYWORDS =
C function decorators that indicate private (file-local) visibility
['static', 'inline', '__inline', '__inline__', '__forceinline'].freeze
- MSVC_CALLING_CONVENTIONS =
MSVC calling-convention keywords (appear between return type and function name)
['__cdecl', '__stdcall', '__fastcall', '__thiscall', '__vectorcall'].freeze
- C11_SPECIFIER_KEYWORDS =
C11/C23 bare specifier keywords (no argument list)
['_Noreturn', '_Thread_local', '_Atomic', '_Bool', '_Complex', '_Imaginary'].freeze
- TYPE_KEYWORDS =
Common type keywords that are part of return type, not decorators
['unsigned', 'signed', 'long', 'short', 'struct', 'union', 'enum'].freeze
- TYPE_QUALIFIER_KEYWORDS =
C type qualifiers
['const', 'volatile', 'restrict'].freeze
- MODIFIER_KEYWORDS =
C function modifier keywords
(['extern'] + TYPE_QUALIFIER_KEYWORDS).freeze
- DECORATOR_KEYWORDS =
Keywords stripped when producing clean
declaration/signature_strippedfields (PRIVATE_KEYWORDS + TYPE_QUALIFIER_KEYWORDS + ['extern']).freeze