OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [gdb-5.3/] [bfd/] [doc/] [proto.str] - Rev 1765

Compare with Previous | Blame | View Log


: SYNOPSIS
        skip_past_newline
        get_stuff_in_command    
        paramstuff
        indent
        maybecatstr
;

: ignore
        skip_past_newline 
        get_stuff_in_command
        outputdots
        maybecatstr
        ;

: CODE_FRAGMENT
        ignore ;

: external
        0 internalmode ignore ;

: internal 
        1 internalmode ignore ;

- input stack { a b } output b if internal, a if external
: ifinternal
        "" swap 1 internalmode maybecatstr
        swap
        "" swap 0 internalmode maybecatstr
        catstr
        ;

- Put note in output string, regardless of internal mode.
: COMMENT
        skip_past_newline
        get_stuff_in_command
        translatecomments
        catstr
        ;

- SENUM    enum-type-name
- ENUM     enum-name
- ENUMX    addl-enum-name
- ENUMDOC  doc for preceding enums
- ENDSENUM max-enum-name

: make_enum_header
        dup
        "enum " swap catstr
        " {\n" catstr
        swap "  _dummy_first_" swap catstr catstr
        ",\n" catstr
        ;
: make_string_table_header
        dup
        "#ifdef _BFD_MAKE_TABLE_" swap catstr swap
        "\n\nstatic const char *const " swap catstr catstr
        "_names[] = { \"@@uninitialized@@\",\n" catstr
        ;
: SENUM
        skip_past_newline
        copy_past_newline
        remchar
        dup
        make_enum_header
        swap
        make_string_table_header
        ifinternal
        catstr
        get_stuff_in_command catstr
        translatecomments ;
: ENDSENUM
        skip_past_newline
        copy_past_newline strip_trailing_newlines
        dup
        "  " swap catstr " };\n" catstr swap
        " \"@@overflow: " swap catstr "@@\",\n};\n#endif\n\n" catstr
        ifinternal
        catstr
        ;
: make_enumerator
        "  " swap catstr
        ",\n" catstr
        ;
: make_enumerator_string
        "  \"" swap catstr
        "\",\n" catstr
        ;
: ENUM
        skip_past_newline
        copy_past_newline
        remchar
        dup
        make_enumerator
        swap
        make_enumerator_string
        ifinternal
        ;
: ENUMX ENUM catstr ;
: ENUMEQ
        skip_past_newline
        "#define "
        copy_past_newline remchar
        catstr
        " "
        catstr
        copy_past_newline
        catstr
        "" swap 0 internalmode maybecatstr
        ;
: ENUMEQX ENUMEQ catstr ;
: ENUMDOC
        skip_past_newline
        get_stuff_in_command
        strip_trailing_newlines
        "\n{* " swap catstr "  *}\n" catstr
        translatecomments
        - discard it if we're doing internal mode
        "" swap 0 internalmode maybecatstr
        swap
        catstr catstr
        ;
: ENDDD external ;
: SECTION ignore ;
: SUBSECTION ignore ;
: SUBSUBSECTION ignore ;
: INTERNAL_DEFINITION internal ;
: DESCRIPTION ignore ;
: FUNCTION external ;
: RETURNS ignore ;
: TYPEDEF external ;
: INTERNAL_FUNCTION internal ;
: INTERNAL internal ;
: INODE ignore ;

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.