FreeBASIC  0.91.0
symb-mangling.bas File Reference
#include "fb.bi"
#include "fbint.bi"
#include "flist.bi"
#include "hash.bi"
#include "ir.bi"
Include dependency graph for symb-mangling.bas:

Go to the source code of this file.

Data Structures

class  FB_MANGLEABBR
 
class  FB_MANGLECTX
 

Macros

#define hIsNested(s)   /* (symbGetNamespace( s ) <> @symbGetGlobalNamespc( )) */
 

Functions

function_as_integer hDoCppMangling (byval_as_FBSYMBOL_ptr sym)
 
sub hMangleProc (byval_as_FBSYMBOL_ptr sym)
 
sub hMangleVariable (byval_as_FBSYMBOL_ptr sym)
 
sub hGetProcParamsTypeCode (byref_as_string mangled, byval_as_FBSYMBOL_ptr sym)
 
sub hMangleNamespace (byref_as_string mangled, byval_as_FBSYMBOL_ptr ns, byval_as_integer dohashing, byval_as_integer isconst)
 
sub symbMangleInit ()
 
sub symbMangleEnd ()
 
function_as_zstring_ptr symbUniqueId ()
 
function_as_zstring_ptr symbUniqueLabel ()
 
function_as_zstring_ptr symbMakeProfileLabelName ()
 
function_as_zstring_ptr symbGetDBGName (byval_as_FBSYMBOL_ptr sym)
 
sub symbSetName (byval_as_FBSYMBOL_ptr s, byval_as_zstring_ptr name_)
 
private sub symbSetMangledId (byval_as_FBSYMBOL_ptr sym, byref_as_string mangled)
 
private sub hMangleUdtId (byref_as_string mangled, byval_as_FBSYMBOL_ptr sym)
 
function_as_zstring_ptr symbGetMangledName (byval_as_FBSYMBOL_ptr sym)
 
sub symbMangleInitAbbrev ()
 
sub symbMangleEndAbbrev ()
 
private function_as_integer hAbbrevFind (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype)
 
private
function_as_FB_MANGLEABBR_ptr 
hAbbrevAdd (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype)
 
private sub hAbbrevGet (byref_as_string mangled, byval_as_integer idx)
 
private function_as_zstring_ptr hMangleBuiltInType (byval_as_integer dtype)
 
sub symbMangleType (byref_as_string mangled, byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype)
 
sub symbMangleParam (byref_as_string mangled, byval_as_FBSYMBOL_ptr param)
 
private function_as_integer hAddUnderscore ()
 
private
function_as_const_zstring_ptr 
hGetOperatorName (byval_as_FBSYMBOL_ptr proc)
 

Variables

const VAR FB_INITMANGARGS = 96
 
FB_MANGLECTX ctx
 

Macro Definition Documentation

#define hIsNested (   s)    /* (symbGetNamespace( s ) <> @symbGetGlobalNamespc( )) */

Definition at line 47 of file symb-mangling.bas.

Function Documentation

private function_as_FB_MANGLEABBR_ptr hAbbrevAdd ( byval_as_integer  dtype,
byval_as_FBSYMBOL_ptr  subtype 
)

Definition at line 239 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private function_as_integer hAbbrevFind ( byval_as_integer  dtype,
byval_as_FBSYMBOL_ptr  subtype 
)

Definition at line 202 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private sub hAbbrevGet ( byref_as_string  mangled,
byval_as_integer  idx 
)

Definition at line 257 of file symb-mangling.bas.

Here is the caller graph for this function:

private function_as_integer hAddUnderscore ( )

Definition at line 509 of file symb-mangling.bas.

Here is the caller graph for this function:

private function_as_integer hDoCppMangling ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 519 of file symb-mangling.bas.

Here is the caller graph for this function:

private function_as_const_zstring_ptr hGetOperatorName ( byval_as_FBSYMBOL_ptr  proc)

Definition at line 804 of file symb-mangling.bas.

Here is the caller graph for this function:

private sub hGetProcParamsTypeCode ( byref_as_string  mangled,
byval_as_FBSYMBOL_ptr  sym 
)

Definition at line 774 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private function_as_zstring_ptr hMangleBuiltInType ( byval_as_integer  dtype)

Definition at line 280 of file symb-mangling.bas.

Here is the caller graph for this function:

private sub hMangleNamespace ( byref_as_string  mangled,
byval_as_FBSYMBOL_ptr  ns,
byval_as_integer  dohashing,
byval_as_integer  isconst 
)

Definition at line 547 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private sub hMangleProc ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 1044 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private sub hMangleUdtId ( byref_as_string  mangled,
byval_as_FBSYMBOL_ptr  sym 
)

Definition at line 147 of file symb-mangling.bas.

Here is the caller graph for this function:

private sub hMangleVariable ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 592 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_zstring_ptr symbGetDBGName ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 98 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_zstring_ptr symbGetMangledName ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 158 of file symb-mangling.bas.

Here is the call graph for this function:

function_as_zstring_ptr symbMakeProfileLabelName ( )

Definition at line 92 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub symbMangleEnd ( )

Definition at line 60 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub symbMangleEndAbbrev ( )

Definition at line 195 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub symbMangleInit ( )

Definition at line 52 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub symbMangleInitAbbrev ( )

Definition at line 191 of file symb-mangling.bas.

Here is the caller graph for this function:

sub symbMangleParam ( byref_as_string  mangled,
byval_as_FBSYMBOL_ptr  param 
)

Definition at line 486 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub symbMangleType ( byref_as_string  mangled,
byval_as_integer  dtype,
byval_as_FBSYMBOL_ptr  subtype 
)

Definition at line 373 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

private sub symbSetMangledId ( byval_as_FBSYMBOL_ptr  sym,
byref_as_string  mangled 
)

Definition at line 141 of file symb-mangling.bas.

Here is the caller graph for this function:

sub symbSetName ( byval_as_FBSYMBOL_ptr  s,
byval_as_zstring_ptr  name_ 
)

Definition at line 123 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_zstring_ptr symbUniqueId ( )

Definition at line 64 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_zstring_ptr symbUniqueLabel ( )

Definition at line 78 of file symb-mangling.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

Definition at line 50 of file symb-mangling.bas.

const VAR FB_INITMANGARGS = 96

Definition at line 28 of file symb-mangling.bas.