Did you know ... Search Documentation:
Pack ffi -- prolog/ctokens.pl
PublicShow source
 c99_tokens(-Tokens)// is semidet
Tokenize an input according to the C99 rules. Tokens are:
  • Keywords and punctuators are rokenized as their atom
  • Identifiers are id(Atom)
  • Constants are one of
    • Integers:
      • i(V) <ddd>
      • l(V) <ddd>l
      • ll(V) <ddd>ll
      • u(V) <ddd>u
      • ul(V) <ddd>ul
      • ull(V) <ddd>ull
    • Floats
      • float(V) <lexical float>f
      • double(V) <lexical float>[l]
    • enum_value(Name) Identifie
    • char(Codes) '...'
    • wchar(Codes) L'...'
    • str(String) "..."
    • wstr(String) L"..."
  • Preprocessing stuff:
    • header(ab, Atom) <assert.h>
    • header(dq, Atom) "file.h"
    • pp(String) pp-number?

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 c99_token(Arg1, Arg2, Arg3)