WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

UDF - UDS Library
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

WIL Function List

 Keywords: WIL Function List Array IntControl 77 100 Num2Char 255  

;--------------------------------------------------------------------------------;
;udfWILFunctionList  : returns a tab delimited list of all WIL Functions         ;
;                                                                                ;
;--------------------------------------------------------------------------------;
;none       : not applicable                                                     ;
;                                                                                 ;
;--------------------------------------------------------------------------------;
;returns    : a tab delimited list of all WIL Functions                          ;
;--------------------------------------------------------------------------------;
; Deana Falk 2010.04.19                                                            ;
;--------------------------------------------------------------------------------;
#DefineFunction udfWILFunctionList()
   functlist = IntControl(77, 100, 0, 0, 0) ;tab-delimited list of WIL function table entries
   count = ItemCount( functlist, @TAB )
   ignorethese = '- + ! != & && ( ) * ** , / : ::  < << > >> <= >= <> = == [ ] ^ | || ~ by to for foreach next endfor if then else elseif endif end if while endwhile select endselect switch endswitch'
   ;Move thru list removing all constants
   newfunctlist = ''
   For ii = 1 To count
       funcdetails = ItemExtract( ii, functlist, @TAB )
       ;arrfunc = Arrayize(funcdetails, Num2Char(255))
       ;funcname = arrfunc[5]
       funcname = ItemExtract( 6, funcdetails, Num2Char(255) )
       ;Ignore all operators check if item is in ignorethese list
       skip = 0
       ignorecount = ItemCount( ignorethese, ' ' )
       For jj = 1 To ignorecount
            ignore = ItemExtract( jj, ignorethese, ' ' )
           If funcname == ignore Then skip = 1
       Next
       ;Ignore all constants
       If StrSub( funcname, 1, 1 ) == '@'
            skip = 1
       EndIf
       ;Ignore ?
       If StrSub( funcname, 1, 1 ) == '?'
            skip = 1
       EndIf
       If !skip Then newfunctlist = newfunctlist : @TAB: funcname
   Next
   newfunctlist = StrTrim(newfunctlist)
   Return  newfunctlist
#EndFunction

list = udfWILFunctionList()
total = ItemCount( list, @TAB )
AskItemlist('WIL function list (Total = ': total: ')', list, @TAB, @SORTED, @SINGLE )


;--------------------------------------------------------------------------------;
;udfWILFunctionArray  : returns an array of all WIL Functions                    ;
;                                                                                ;
;--------------------------------------------------------------------------------;
;none       : not applicable                                                     ;
;                                                                                 ;
;--------------------------------------------------------------------------------;
;returns    : an array of all WIL Functions                                      ;
;--------------------------------------------------------------------------------;
; Deana Falk 2010.04.19                                                            ;
;--------------------------------------------------------------------------------;
#DefineFunction udfWILFunctionArray()
   functlist = IntControl(77, 100, 0, 0, 0) ;tab-delimited list of WIL function table entries
   arrfunctlist = Arrayize(functlist, @TAB)
   totalcount = ArrInfo(arrfunctlist, 1 )-1
   ignorethese = '- + ! != & && ( ) * ** , / : ::  < << > >> <= >= <> = == [ ] ^ | || ~ by to for foreach next endfor if then else elseif endif end if while endwhile select endselect switch endswitch'
   ;Move thru array removing all constants
   arrnewfunctlist = ArrDimension( totalcount )
   count = 0
   For ii = 0 To totalcount
       funcdetails = arrfunctlist[ii]
       arrfunc = Arrayize(funcdetails, Num2Char(255))
       funcname = arrfunc[5]
       ;Ignore all operators check if item is in ignorethese list
        skip = 0
       ignorecount = ItemCount( ignorethese, ' ' )
       For jj = 1 To ignorecount
            ignore = ItemExtract( jj, ignorethese, ' ' )
           If funcname == ignore Then skip = 1
       Next
       ;Ignore all constants and ?
       If StrSub( funcname, 1, 1 ) == '@' || StrSub( funcname, 1, 1 ) == '?'
           Continue
       EndIf
       If skip == 0
          arrnewfunctlist[count] = funcname
          count = count+1
       EndIf
   Next
   Return arrnewfunctlist
#EndFunction

output =  DirScript():'WIL_Func_List.txt'
arraylist = udfWILFunctionArray()
ArrayFilePut(output, arraylist)
Run(output,'')
Exit

Article ID:   W18339
Filename:   WIL Function List.txt
File Created: 2010:04:20:10:58:08
Last Updated: 2010:04:20:10:58:08