예제 #1
0
static bool cmdFileChar(        // TEST IF A FILENAME CHARACTER
    void )
{
    char c = *cmd.curr_ptr;

    if( c == _SWITCH_CHAR1 || c == _SWITCH_CHAR2 ) {
        return( true );
    }
    return !CmdScanSwEnd();
}
예제 #2
0
static bool scanDefinePlus( OPT_STRING **p )
{
    MEPTR cmdln_mac;

    p = p;
    if( CmdScanSwEnd() ) {
        CompFlags.extended_defines = 1;
    } else {
        cmdln_mac = DefineCmdLineMacro( TRUE );
        if( cmdln_mac != NULL ) {
            cmdln_mac->macro_flags |= MFLAG_USER_DEFINED;
        }
    }
    return( TRUE );
}
예제 #3
0
static bool scanFBIopts         // SCAN FBI/FBX OPTIONS
    ( FBI_KIND* a_kind          // - addr[ option kinds ]
    , FBI_KIND def_kind )       // - default kind
{
    bool retn;                  // - return: 1 ==> ok, 0 ==> error
    FBI_KIND kind;              // - options scanned

    kind = 0;
    CmdRecogEquals();
    for( ; ; ) {
        if( CmdScanSwEnd()
         || CmdPeekChar() == '-' ) {
            if( 0 == kind ) {
                kind = def_kind;
            }
            retn = TRUE;
            break;
        }
        switch( CmdScanChar() ) {
          case 'v' :
            kind |= FBI_VAR;
            continue;
          case 't' :
            kind |= FBI_TYPE;
            continue;
          case 'f' :
            kind |= FBI_FUN;
            continue;
          case 'm' :
            kind |= FBI_MEMB_DATA;
            continue;
          case 'p' :
            kind |= FBI_MACRO;
            continue;
          default :
            BadCmdLine( ERR_INVALID_OPTION );
            retn = FALSE;
            break;
        }
        break;
    }
    *a_kind = kind;
    return( retn );
}
예제 #4
0
static void nextSwitch(         // POSITION FOR NEXT SWITCH
    void )
{
    for( CmdScanChar(); ! CmdScanSwEnd(); CmdScanChar() );
}