Derleyici Tasarımı
Yüklüyor...
Arıyor...
Eşleşme Yok
Sınıflar | Fonksiyonlar | Değişkenler
tokenizer.h Dosya Referansı

Tokenizer Ayrıntılar...

#include "lexer.h"
#include "map.h"
#include <stddef.h>
#include <stdint.h>
tokenizer.h için içerme bağımlılık grafiği:
Bu şekil hangi dosyaların doğrudan ya da dolaylı olarak bu dosyayı içerdiğini gösterir:

Bu dosyanın kaynak koduna git.

Sınıflar

struct  tokenizer
 tokenizer. Ayrıntılar...
 
union  seminfo
 [Tokenizer tanımı] Ayrıntılar...
 
struct  token
 Token. Ayrıntılar...
 

Fonksiyonlar

void tokenizer_init (struct tokenizer *tokenizer)
 [Token tanımı]
 
void tokenizer_destroy (struct tokenizer *tokenizer)
 Tokenizerın tahsis ettiği belleği temizler.
 
void tokenizer_add_keyword (struct tokenizer *tokenizer, const char *keyword, size_t id)
 Tokenizera bir keyword kaydeder.
 
void tokenizer_add_punctuation (struct tokenizer *tokenizer, const char *punctuation, size_t id)
 Tokenizera bir punctuation kaydeder..
 
size_t tokenizer_ident_id2 (struct tokenizer *tokenizer, const char *ident, size_t ident_len)
 Identifier'a ait ID'yi döner.
 
size_t tokenizer_ident_id (struct tokenizer *tokenizer, const char *ident)
 Identifier'a ait ID'yi döner.
 
void tokenizer_feed (struct tokenizer *tokenizer, struct lexeme lexeme)
 Lexemeyi tokenizere gönderir.
 
struct token tokenizer_next (struct tokenizer *tokenzier)
 Sıradaki tokeni çek.
 

Değişkenler

static const size_t TK_NOTOKEN = INT16_MAX - 1
 tokenizer_feed() ile verilen lexemenin bittiğini belirtir.
 
static const size_t TK_INT = INT16_MAX - 2
 Tam sayı token ID'si.
 
static const size_t TK_FLOAT = INT16_MAX - 3
 Ondalık sayı token ID'si.
 
static const size_t TK_IDENT = INT16_MAX - 4
 Identifier token ID'si.
 

Ayrıntılı tanımlama

Tokenizer

tokenizer.h dosyasında tanımlanmıştır.

Fonksiyon Dokümantasyonu

◆ tokenizer_feed()

void tokenizer_feed ( struct tokenizer tokenizer,
struct lexeme  lexeme 
)

Lexemeyi tokenizere gönderir.

[Tokenizerın esas işlevleri]

◆ tokenizer_ident_id2()

size_t tokenizer_ident_id2 ( struct tokenizer tokenizer,
const char *  ident,
size_t  ident_len 
)

Identifier'a ait ID'yi döner.

Hâlihazırda bir ID atanmamışsa identifier için yeni bir ID üretir.

◆ tokenizer_init()

void tokenizer_init ( struct tokenizer tokenizer)

[Token tanımı]

Yeni bir tokenizer oluşturur.

Değişken Dokümantasyonu

◆ TK_FLOAT

const size_t TK_FLOAT = INT16_MAX - 3
static

Ondalık sayı token ID'si.

tokenizer.h dosyasının 25 numaralı satırında tanımlanmıştır.

◆ TK_IDENT

const size_t TK_IDENT = INT16_MAX - 4
static

Identifier token ID'si.

tokenizer.h dosyasının 28 numaralı satırında tanımlanmıştır.

◆ TK_INT

const size_t TK_INT = INT16_MAX - 2
static

Tam sayı token ID'si.

tokenizer.h dosyasının 22 numaralı satırında tanımlanmıştır.

◆ TK_NOTOKEN

const size_t TK_NOTOKEN = INT16_MAX - 1
static

tokenizer_feed() ile verilen lexemenin bittiğini belirtir.

tokenizer.h dosyasının 19 numaralı satırında tanımlanmıştır.