Home About Applications Software License Documentation Download Community



Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

keycc.c File Reference

Keystone source file. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include "keycc.h"
#include "template.h"
#include "combine.h"
#include "configparser.h"

Defines

#define USE_COMBINER   TRUE
#define TEMP_FILE_NAME_IN   "__tempin__.c"
#define TEMP_FILE_NAME_OUT   "__tempout__.c"
#define BUF_SIZE   (MAX_LINE * 100)
#define TEMPLATE_MAX   100
#define BLOCK_DEPTH_MAX   50

Typedefs

typedef PREPROCESS TPreProcess

Functions

Global void PREPROCESS_name_convert (char *name)
Global bool ismchar (char c)
Global char * strmatch (char *str)
void TPLIST_add (TTemplateList *this, TTemplate *template)
int TPLIST_count (TTemplateList *this)
TTemplateTPLIST_template_n (TTemplateList *this, int n)
TTemplateTPLIST_find (TTemplateList *this, char *name)
void FBUF_new (TFileBuffer *this)
static char * FBUF_buf (TFileBuffer *this)
static bool FBUF_empty (TFileBuffer *this)
static void FBUF_clear (TFileBuffer *this)
static void FBUF_append (TFileBuffer *this, char *data)
static void FBUF_file_write (TFileBuffer *this, FILE *file)
static void FBUF_delete (TFileBuffer *this)
static void PREPROCESS_new (TPreProcess *this)
static void PREPROCESS_delete (TPreProcess *this)
Global ECCompiler PREPROCESS_CCompiler (TPreProcess *this)
Global char * PREPROCESS_current_filename (TPreProcess *this)
Local int PREPROCESS_nl_count (TPreProcess *this, char *str)
Local void PREPROCESS_nl_append (TPreProcess *this, char *str, int nl_count)
int PREPROCESS_cobjclass_offset (TPreProcess *this)
int PREPROCESS_cobjclass_vtbl_offset (TPreProcess *this)
void PREPROCESS_lineinfo_print (TPreProcess *this)
void PREPROCESS_template_register (TPreProcess *this, TTemplate *template)
static TTemplatePREPROCESS_block_template_find (TPreProcess *this, char *input, char **t_start, char **t_end, TTemplateArgs *args)
static char * PREPROCESS_block_translate (TPreProcess *this, char *input, char *extra)
static void PREPROCESS_block (TPreProcess *this, EBlockType type, char *input, char *output, char *extra)
static void PREPROCESS_statement_extract (TPreProcess *this, char *end, char *output)
static bool PREPROCESS_line (TPreProcess *this, char *input, char *output, char *extra)
static void PREPROCESS_lineinfo_write (TPreProcess *this, char *dest, int line_no, char *file_name)
static int PREPROCESS_begin (TPreProcess *this, int argc, char **argv)
int main (int argc, char **argv)

Variables

TPreProcess preprocess


Detailed Description

Keystone source file.

Keystone Alpha Release

by Jacob Lister - 2004.

contact j_lister@paradise.net.nz


Define Documentation

#define BLOCK_DEPTH_MAX   50
 

#define BUF_SIZE   (MAX_LINE * 100)
 

#define TEMP_FILE_NAME_IN   "__tempin__.c"
 

#define TEMP_FILE_NAME_OUT   "__tempout__.c"
 

#define TEMPLATE_MAX   100
 

#define USE_COMBINER   TRUE
 


Typedef Documentation

typedef struct PREPROCESS TPreProcess
 


Function Documentation

static void FBUF_append TFileBuffer this,
char *  data
[static]
 

static char* FBUF_buf TFileBuffer this  )  [inline, static]
 

static void FBUF_clear TFileBuffer this  )  [static]
 

static void FBUF_delete TFileBuffer this  )  [static]
 

static bool FBUF_empty TFileBuffer this  )  [inline, static]
 

static void FBUF_file_write TFileBuffer this,
FILE *  file
[static]
 

void FBUF_new TFileBuffer this  ) 
 

Global bool ismchar char  c  ) 
 

int main int  argc,
char **  argv
 

static int PREPROCESS_begin TPreProcess this,
int  argc,
char **  argv
[static]
 

static void PREPROCESS_block TPreProcess this,
EBlockType  type,
char *  input,
char *  output,
char *  extra
[static]
 

static TTemplate* PREPROCESS_block_template_find TPreProcess this,
char *  input,
char **  t_start,
char **  t_end,
TTemplateArgs args
[static]
 

static char* PREPROCESS_block_translate TPreProcess this,
char *  input,
char *  extra
[static]
 

Global ECCompiler PREPROCESS_CCompiler TPreProcess this  ) 
 

int PREPROCESS_cobjclass_offset TPreProcess this  ) 
 

int PREPROCESS_cobjclass_vtbl_offset TPreProcess this  ) 
 

Global char* PREPROCESS_current_filename TPreProcess this  ) 
 

static void PREPROCESS_delete TPreProcess this  )  [static]
 

static bool PREPROCESS_line TPreProcess this,
char *  input,
char *  output,
char *  extra
[static]
 

void PREPROCESS_lineinfo_print TPreProcess this  ) 
 

static void PREPROCESS_lineinfo_write TPreProcess this,
char *  dest,
int  line_no,
char *  file_name
[static]
 

Global void PREPROCESS_name_convert char *  name  ) 
 

static void PREPROCESS_new TPreProcess this  )  [static]
 

Local void PREPROCESS_nl_append TPreProcess this,
char *  str,
int  nl_count
 

Local int PREPROCESS_nl_count TPreProcess this,
char *  str
 

static void PREPROCESS_statement_extract TPreProcess this,
char *  end,
char *  output
[static]
 

void PREPROCESS_template_register TPreProcess this,
TTemplate template
 

Global char* strmatch char *  str  ) 
 

void TPLIST_add TTemplateList this,
TTemplate template
 

int TPLIST_count TTemplateList this  ) 
 

TTemplate* TPLIST_find TTemplateList this,
char *  name
 

TTemplate* TPLIST_template_n TTemplateList this,
int  n
 


Variable Documentation

TPreProcess preprocess
 


Generated on Sat Feb 26 15:54:38 2005 for Keystone by  doxygen 1.4.1