IDCRT - The IDA-C Runtime Library
Version 0.002

--------------------------------------------------------------------------------
Homepage: http://www.jasonweiler.com/IDCRT.html
Feedback to: idcrt AT jasonweiler DOT com
--------------------------------------------------------------------------------

This is pretty much an experiment in IDC that broke out of the lab and 
made a run for it. I don't know how useful it'll be in it's current
state, but hopefully it'll become more useful over time. Read the files
for some details on the function arguments. Tips, suggestions, bugfixes,
and contributions are of course welcome.

Installation
------------
Just unzip (with paths) to your idc directory.

Good luck!
Jason

--------------------------------------------------------------------------------
Revision History
-------- -------
5/19/2003 - v0.001
+ Initial (VERY buggy) release

5/23/2003 - v0.002
+ Renamed splitpathV to splitpathv to be more consistent. (ditto makepathV)
+ Renamed upstr and downstr to strupr and strlwr
+ Modularized the codebase to avoid having a cascade of includes pulling unused code in
+ Added strtitle, abs, and fileexists functions
+ Made splitpathv behave more like the msvc function it was modelled after
+ Many more silly bugs fixed...many more to find...

6/5/2003
+ Added splitstring
+ Added compactstrarray

7/31/2003 - v0.003
+ Fixed isalnum
+ Fixed iscsym
+ Fixed iscsymf
+ Added to the test.idc script

--------------------------------------------------------------------------------
Function List: 
-------- ----

->ctype.idc
isspace - is a character in [\n\r\t ]
isxdigit - is a character in [0-9,A-F,a-f]
isdigit - is a character in [0-9]
isalpha - is a character in [A-Z, a-z]
isalnum - is a character in [A-Z, a-z, 0-9]
iscsym - is a character in [A-Z, a-z, 0-9, _]
iscsymf - is a character in [A-Z, a-z, _]
isupper - is a character in [A-Z]
islower - is a character in [a-z]

->stdio.idc
unlink - delete file
fileexists - tells whether a file could be found for opening
feof - indicate when file stream has reached the EOF

->process.idc
spawn - create synchronous process with a command string
spawnv - create synchronous process with an argument vector
exec - create asynchronous process with a command string
execv - create asynchronous process with an argument vector

->string.idc
strrstr - Find the last instance of one string in another
strcmp - compare two strings
stricmp - compare two strings ignoring case
strncmp - compare two strings up to N characters
strnicmp - compare two strings up to N characters ignoring case
splitstring - converts in input string into an array of substrings
compactstrarray - packs all the indicies of an array of strings and optionally removes empty strings

->stdlib.idc
makepath - create a valid Win32 path from the four path components passed in as strings
splitpathv - split the input path into the four path components and put them in an argument vector
makepathv - create a valid Win32 path from the four path components in an argument vector
toupper - convert the input character to upper-case
tolower - convert the input character to lower-case
strupr - convert the input string to upper case
strlwr - convert input string to lower case
strtitle - convert input string to Titlized case
ishexstr - is the input a hexdecimal string [0x][0-9A-Za-z]+
abs - find the absolute value of a number

->whitespace.idc
EatLeadWS - return the input string after removing any leading whitespace
EatTailWS - return the input string after removing any trailing whitespace
FindNextWS - find the next instance of whitespace in the current string
ParseWS - return the next non-whitespace section of the specified file

--------------------------------------------------------------------------------
Copyright  Jason Weiler 2003
--------------------------------------------------------------------------------

