yasm_objfmt_module Struct Reference

Object format module interface. More...

#include <objfmt.h>


Data Fields

const char * name
 One-line description of the object format.
const char * keyword
 Keyword used to select object format.
const char * extension
 Default output file extension (without the '.
const unsigned char default_x86_mode_bits
 Default (starting) x86 BITS setting.
const char ** dbgfmt_keywords
 NULL-terminated list of debug format (yasm_dbgfmt) keywords that are valid to use with this object format.
const char * default_dbgfmt_keyword
 Default debug format keyword (set even if there's only one available to use).
const yasm_directivedirectives
 NULL-terminated list of directives.
const yasm_stdmacstdmacs
 NULL-terminated list of standard macro lookups.
yasm_objfmt *(* create )(yasm_object *object)
 Create object format.
void(* output )(yasm_object *o, FILE *f, int all_syms, yasm_errwarns *errwarns)
 Module-level implementation of yasm_objfmt_output().
void(* destroy )(yasm_objfmt *objfmt)
 Module-level implementation of yasm_objfmt_destroy().
yasm_section *(* add_default_section )(yasm_object *object)
 Module-level implementation of yasm_objfmt_add_default_section().
yasm_section *(* section_switch )(yasm_object *object, yasm_valparamhead *valparams, yasm_valparamhead *objext_valparams, unsigned long line)
 Module-level implementation of yasm_objfmt_section_switch().
yasm_symrec *(* get_special_sym )(yasm_object *object, const char *name, const char *parser)
 Module-level implementation of yasm_objfmt_get_special_sym().


Detailed Description

Object format module interface.

Definition at line 48 of file objfmt.h.


Field Documentation

const char* yasm_objfmt_module::name

One-line description of the object format.

Definition at line 50 of file objfmt.h.

const char* yasm_objfmt_module::keyword

Keyword used to select object format.

Definition at line 53 of file objfmt.h.

const char* yasm_objfmt_module::extension

Default output file extension (without the '.

'). NULL means no extension, with no '.', while "" includes the '.'.

Definition at line 58 of file objfmt.h.

const unsigned char yasm_objfmt_module::default_x86_mode_bits

Default (starting) x86 BITS setting.

This only appies to the x86 architecture; other architectures ignore this setting.

Definition at line 63 of file objfmt.h.

const char** yasm_objfmt_module::dbgfmt_keywords

NULL-terminated list of debug format (yasm_dbgfmt) keywords that are valid to use with this object format.

The null debug format (null_dbgfmt, "null") should always be in this list so it's possible to have no debug output.

Definition at line 70 of file objfmt.h.

const yasm_directive* yasm_objfmt_module::directives

NULL-terminated list of directives.

NULL if none.

Definition at line 78 of file objfmt.h.

const yasm_stdmac* yasm_objfmt_module::stdmacs

NULL-terminated list of standard macro lookups.

NULL if none.

Definition at line 81 of file objfmt.h.

yasm_objfmt*(* yasm_objfmt_module::create)(yasm_object *object)

Create object format.

Module-level implementation of yasm_objfmt_create(). Call yasm_objfmt_create() instead of calling this function.

Parameters:
object object
a architecture in use
Returns:
NULL if architecture/machine combination not supported.

void(* yasm_objfmt_module::output)(yasm_object *o, FILE *f, int all_syms, yasm_errwarns *errwarns)

Module-level implementation of yasm_objfmt_output().

Call yasm_objfmt_output() instead of calling this function.

void(* yasm_objfmt_module::destroy)(yasm_objfmt *objfmt)

Module-level implementation of yasm_objfmt_destroy().

Call yasm_objfmt_destroy() instead of calling this function.

yasm_section*(* yasm_objfmt_module::add_default_section)(yasm_object *object)

Module-level implementation of yasm_objfmt_add_default_section().

Call yasm_objfmt_add_default_section() instead of calling this function.

yasm_section*(* yasm_objfmt_module::section_switch)(yasm_object *object, yasm_valparamhead *valparams,yasm_valparamhead *objext_valparams, unsigned long line)

Module-level implementation of yasm_objfmt_section_switch().

Call yasm_objfmt_section_switch() instead of calling this function.

yasm_symrec*(* yasm_objfmt_module::get_special_sym)(yasm_object *object, const char *name, const char *parser)

Module-level implementation of yasm_objfmt_get_special_sym().

Call yasm_objfmt_get_special_sym() instead of calling this function.


The documentation for this struct was generated from the following file:
Generated on Sun Sep 7 01:23:32 2008 for libyasm by  doxygen 1.5.2