• Subject: Re: Blank Supress
  • From: boldt@xxxxxxxxxx
  • Date: Thu, 22 Jul 1999 12:02:10 -0400



Jerry wrote:
>Hi Hans,
>
>Thanks for the explanation. It's cool to know how things work "on the inside".
>
>Okay, so a little more layman... An end of field pointer is used to indicate
the end of the >field, and after a %trim it is set to the end of the actual data
(right?) So what if the data >doesn't start in position 1? Doesn't the %trim
"clip" the data from the right and left of the >data? Is there a "pointer" for
the beginning of data?
>
>Well, I probably don't know what I'm talking about enough to ask any more
"haven't got a clue" >questions so please, nitpick away...

I think you've got the idea.  Internally, the result of a %TRIM
is the address of the first non-blank character plus the length
of the string.  %TRIM has two steps: 1) advance the address of
the string (decrementing the length) until the first non-blank
char is found; and 2) decrease the length until all right-most
blanks are eliminated.  Since this is still internal to the
expression, the address of the string is left on top of the
stack and the length is in some compiler-generated temporary
variable.

Cheers!  Hans

Hans Boldt, ILE RPG Development, IBM Toronto Lab, boldt@ca.ibm.com


* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This is the RPG/400 Discussion Mailing List!  To submit a new         *
* message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   *
* from this list send email to MAJORDOMO@midrange.com and specify       *
* 'unsubscribe RPG400-L' in the body of your message.  Questions should *
* be directed to the list owner / operator: david@midrange.com          *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *


This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2019 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].