dipimp.h
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 258 行 · 第 1/2 页
H
258 行
/****************************************************************************
*
* Open Watcom Project
*
* Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
* ========================================================================
*
* This file contains Original Code and/or Modifications of Original
* Code as defined in and that are subject to the Sybase Open Watcom
* Public License version 1.0 (the 'License'). You may not use this file
* except in compliance with the License. BY USING THIS FILE YOU AGREE TO
* ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
* provided with the Original Code and Modifications, and is also
* available at www.sybase.com/developer/opensource.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
* ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
* NON-INFRINGEMENT. Please see the License for the specific language
* governing rights and limitations under the License.
*
* ========================================================================
*
* Description: Interface functions exported and imported by DIPs.
*
****************************************************************************/
#ifndef _DIPIMP_H_INCLUDED
#define _DIPIMP_H_INCLUDED
#include "digpck.h"
#include "diptypes.h"
struct imp_image_handle;
struct imp_type_handle;
struct imp_cue_handle;
struct imp_sym_handle;
typedef struct imp_image_handle imp_image_handle;
typedef struct imp_type_handle imp_type_handle;
typedef struct imp_cue_handle imp_cue_handle;
typedef struct imp_sym_handle imp_sym_handle;
typedef unsigned_16 imp_mod_handle;
typedef unsigned_16 image_index;
#define DIP_MAJOR 1
#define DIP_MINOR 3
#define DIP_MINOR_OLD 0
typedef walk_result (DIGCLIENT IMP_MOD_WKR)( imp_image_handle *, imp_mod_handle, void * );
typedef walk_result (DIGCLIENT IMP_TYPE_WKR)( imp_image_handle *, imp_type_handle *, void * );
typedef walk_result (DIGCLIENT IMP_SYM_WKR)( imp_image_handle *, sym_walk_info, imp_sym_handle *, void * );
typedef walk_result (DIGCLIENT IMP_CUE_WKR)( imp_image_handle *, imp_cue_handle *, void * );
struct dip_imp_routines {
unsigned_8 major;
unsigned_8 minor;
unsigned_16 dip_priority;
const char *dip_name;
unsigned (DIGENTRY *handle_size)( handle_kind );
dip_status (DIGENTRY *more_mem)( unsigned );
void (DIGENTRY *shutdown)( void );
void (DIGENTRY *cancel)(void);
dip_status (DIGENTRY *load_info)( dig_fhandle, imp_image_handle * );
void (DIGENTRY *map_info)( imp_image_handle *, void * );
void (DIGENTRY *unload_info)( imp_image_handle * );
walk_result (DIGENTRY *walk_mod_list)( imp_image_handle *, IMP_MOD_WKR *, void * );
unsigned (DIGENTRY *mod_name)( imp_image_handle *, imp_mod_handle, char *, unsigned );
char *(DIGENTRY *mod_src_lang)( imp_image_handle *, imp_mod_handle );
dip_status (DIGENTRY *mod_info)( imp_image_handle *, imp_mod_handle, handle_kind );
dip_status (DIGENTRY *mod_default)( imp_image_handle *, imp_mod_handle, default_kind, type_info * );
search_result (DIGENTRY *addr_mod)( imp_image_handle *, address, imp_mod_handle * );
address (DIGENTRY *mod_addr)( imp_image_handle *, imp_mod_handle );
walk_result (DIGENTRY *walk_type_list)( imp_image_handle *, imp_mod_handle, IMP_TYPE_WKR *, imp_type_handle *, void * );
imp_mod_handle (DIGENTRY *type_mod)(imp_image_handle *, imp_type_handle * );
dip_status (DIGENTRY *tipe_info)(imp_image_handle *, imp_type_handle *, location_context *, type_info * );
dip_status (DIGENTRY *old_type_base)(imp_image_handle *, imp_type_handle *, imp_type_handle * );
dip_status (DIGENTRY *type_array_info)(imp_image_handle *, imp_type_handle *, location_context *, array_info *, imp_type_handle * );
dip_status (DIGENTRY *type_proc_info)(imp_image_handle *, imp_type_handle *, imp_type_handle *, unsigned );
dip_status (DIGENTRY *type_ptr_addr_space)( imp_image_handle *, imp_type_handle *, location_context *, address * );
dip_status (DIGENTRY *type_thunk_adjust)( imp_image_handle *, imp_type_handle *, imp_type_handle *, location_context *, address * );
int (DIGENTRY *type_cmp)( imp_image_handle *, imp_type_handle *, imp_type_handle * );
unsigned (DIGENTRY *type_name)( imp_image_handle *, imp_type_handle *, unsigned, symbol_type *, char *, unsigned );
walk_result (DIGENTRY *walk_sym_list)( imp_image_handle *, symbol_source, void *, IMP_SYM_WKR *, imp_sym_handle *, void * );
imp_mod_handle (DIGENTRY *sym_mod)(imp_image_handle *, imp_sym_handle * );
unsigned (DIGENTRY *sym_name)( imp_image_handle *, imp_sym_handle *, location_context *, symbol_name, char *, unsigned );
dip_status (DIGENTRY *sym_type)( imp_image_handle *, imp_sym_handle *, imp_type_handle * );
dip_status (DIGENTRY *sym_location)( imp_image_handle *, imp_sym_handle *, location_context *, location_list * );
dip_status (DIGENTRY *sym_value)( imp_image_handle *, imp_sym_handle *, location_context *, void * );
dip_status (DIGENTRY *sym_info)( imp_image_handle *, imp_sym_handle *, location_context *, sym_info * );
dip_status (DIGENTRY *sym_parm_location)( imp_image_handle *, imp_sym_handle *, location_context *, location_list *, unsigned );
dip_status (DIGENTRY *sym_obj_type)( imp_image_handle *, imp_sym_handle *, imp_type_handle *, type_info * );
dip_status (DIGENTRY *sym_obj_location)( imp_image_handle *, imp_sym_handle *, location_context *, location_list * );
search_result (DIGENTRY *addr_sym)( imp_image_handle *, imp_mod_handle, address, imp_sym_handle * );
search_result (DIGENTRY *lookup_sym)( imp_image_handle *, symbol_source, void *, lookup_item *, void * );
search_result (DIGENTRY *addr_scope)( imp_image_handle *, imp_mod_handle, address, scope_block * );
search_result (DIGENTRY *scope_outer)( imp_image_handle *, imp_mod_handle, scope_block *, scope_block * );
int (DIGENTRY *sym_cmp)( imp_image_handle *, imp_sym_handle *, imp_sym_handle * );
walk_result (DIGENTRY *walk_file_list)( imp_image_handle *, imp_mod_handle, IMP_CUE_WKR *, imp_cue_handle *, void * );
imp_mod_handle (DIGENTRY *cue_mod)(imp_image_handle *, imp_cue_handle * );
unsigned (DIGENTRY *cue_file)( imp_image_handle *, imp_cue_handle *, char *, unsigned );
cue_file_id (DIGENTRY *cue_fyle_id)( imp_image_handle *, imp_cue_handle * );
dip_status (DIGENTRY *cue_adjust)( imp_image_handle *, imp_cue_handle *, int, imp_cue_handle * );
unsigned long (DIGENTRY *cue_line)( imp_image_handle *, imp_cue_handle * );
unsigned (DIGENTRY *cue_column)( imp_image_handle *, imp_cue_handle * );
address (DIGENTRY *cue_addr)( imp_image_handle *, imp_cue_handle * );
search_result (DIGENTRY *line_cue)( imp_image_handle *, imp_mod_handle, cue_file_id, unsigned long, unsigned, imp_cue_handle * );
search_result (DIGENTRY *addr_cue)( imp_image_handle *, imp_mod_handle, address, imp_cue_handle * );
int (DIGENTRY *cue_cmp)( imp_image_handle *, imp_cue_handle *, imp_cue_handle * );
dip_status (DIGENTRY *type_base)(imp_image_handle *, imp_type_handle *, imp_type_handle *, location_context *, location_list * );
dip_status (DIGENTRY *type_addref)( imp_image_handle *, imp_type_handle * );
dip_status (DIGENTRY *type_release)( imp_image_handle *, imp_type_handle * );
dip_status (DIGENTRY *type_freeall)( imp_image_handle * );
dip_status (DIGENTRY *sym_addref)( imp_image_handle *, imp_sym_handle * );
dip_status (DIGENTRY *sym_release)( imp_image_handle *, imp_sym_handle * );
dip_status (DIGENTRY *sym_freeall)( imp_image_handle * );
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?