Search the web
Sign In
New User? Sign Up
elfdata
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Want your group to be featured on the Yahoo! Groups website? Add a group photo to Flickr.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
ElfData 5.3 released   Message List  
Reply | Forward Message #406 of 445 |
Hi everyone,

I've got a new version of ElfData out. ElfData v5.3

For those who don't know, ElfData is the most advanced string
processing library for REALbasic. Giving the most speed, assuming it's
used correctly. Of course, used incorrectly, it will be slower.

read about: http://elfdata.com/plugin/
download: http://elfdata.com/plugin/elfdata.zip
technical ref: http://www.elfdata.com/plugin/technicalref

What's so special about this version compared to the previous version?
Well... I've added one new function. But whats special is that I more
fully documented many functions that were written long ago and got
only brief or no documentation.

I spent a long time writing this page up:
http://www.elfdata.com/plugin/technicalref/ElfDataMCat16.html

This page explains all about how to use ElfData's "unixy" file
processing functions.

There's also that really neat little example I discovered recently,
that I could count the number of lines in a file, in three lines of
ElfData code, and do it 2.5-5x faster than REALbasic could do it, even
though REALbasic required many times more lines.

dim fi as ElfDataFields = SomeFolderItem.ElfDataFields
call fi.MoveNext( ElfData.kEnd ) // kEnd is the biggest number an
integer can handle
MsgBox str( fi.Count ) + " lines found in " + fi.file.Path

Of course that's not the only thing ElfData can do faster, ElfData can
do thousands of things faster than REALbasic, usually at least 2x
faster, but often running into 10, 100, or even 1000x faster. (1000x
or more faster would be my "multiple replace all" class that does
stuff that would be a nightmare without it.)

I also fixed one bug with operator_convert, that didn't produce bad
results, but operator_convert ran on comparing "ElfData1 <> ElfData2"
when it wasn't meant to. That's been fixed now and designed properly.

Anyhow, the main thing is now people can have a central place to look
at to see what file processing functions ElfData has. Because of how
simple these functions make some tasks, I was able to write a program
to check if all the files passed, were UTF-8, ASCII, or neither. And
do it recursively over directories. And all of that, in about 30 lines
of code. Example below:

Sub ProcessFile(path as ElfData)
dim e as ElfData = path.FileListing( 10, true )
if e <> nil then // it's a folder
dim fi as ElfDataFields = e.Lines
While fi.MoveNext
ProcessFile fi
wend
Return
end if

dim data as ElfData = path.FileData
if data = nil then
stdout.Write "Unreadable"
elseif data.IsASCII then
stdout.Write "ASCII"
elseif data.Verify = 0 then
stdout.Write "UTF-8"
else
stdout.Write "Not_ASCII_Or_UTF-8"
end if

stdout.Write chrb(9)
stdout.WriteLine path
End Sub


Function Run(args() as String) As Integer
// copy this code into the "Run" event of a shell (console) project
for i as Integer = 1 to UBound( args )
dim fi as ElfDataFields = args( i ).ElfData.Lines

While fi.MoveNext
ProcessFile fi
wend
next
End Function




Sat May 16, 2009 5:36 pm

boytheouk
Offline Offline
Send Email Send Email

Forward
Message #406 of 445 |
Expand Messages Author Sort by Date

Hi everyone, I've got a new version of ElfData out. ElfData v5.3 For those who don't know, ElfData is the most advanced string processing library for...
Theodore H. Smith
boytheouk
Offline Send Email
May 16, 2009
5:39 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help