comp.lang.ada
 help / color / mirror / Atom feed
From: bdbryant@mail.utexas.edu (Bobby D. Bryant)
Subject: Re: creating own Image function
Date: Wed, 29 Dec 2004 17:06:25 +0000 (UTC)
Date: 2004-12-29T17:06:25+00:00	[thread overview]
Message-ID: <cquo6g$les$1@geraldo.cc.utexas.edu> (raw)
In-Reply-To: 1104339103.436794.134250@f14g2000cwb.googlegroups.com

On Wed, 29 Dec 2004, "R" <ruthless@poczta.onet.pl> wrote:

> Hello.
> 
> I've written my own Image function it's sth like Java's toString.
> 
> function Image(this: rec1) return String is
> tmp : String(1..26);
> begin
> tmp := "The value of field is:" & Integer'Image(Get(this));
> return tmp;
> end Image;
> 
> when I use it:
> 
> testclass.Create(object, 100); -- note 100 is 3 digits = 3 Characters
> Put(testclass.Image(object));
> 
> then I can see "The value of field is: 100"
> when I initiate my object with 10 - 2 digits = 2 Characters
> an exception is raised:
> CONSTRAINT_ERROR : testclass.adb:34 length check failed
> 
> it's because tmp: Sting has it's fixed length can it be more flexible?
> 
> When I tried with String(1..100) the same effect
> users can initate their objects with 1, 11, 111, 111111 and so on.
> 
> so my question is: can I write(with Your help of course) a function
> flexible to handle all those situations?


I think you can declare tmp as -

   tmp : String := "The value of field is:" & Integer'Image(Get(this));


For that matter, I think you can skip the declaration and just do -

   return "The value of field is:" & Integer'Image(Get(this));

as the body of your function.


-- 
Bobby Bryant
Austin, Texas



  parent reply	other threads:[~2004-12-29 17:06 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-29 16:51 creating own Image function R
2004-12-29 17:01 ` Vinzent 'Gadget' Hoefler
2004-12-29 17:04 ` Mark Lorenzen
2004-12-29 17:20   ` Luke A. Guest
2004-12-29 20:56     ` Mark Lorenzen
2004-12-30  4:04       ` Jeffrey Carter
2004-12-30  8:32         ` Vinzent 'Gadget' Hoefler
2004-12-30  4:02     ` Jeffrey Carter
2005-01-15 23:58       ` Sandro Magi
2004-12-29 17:06 ` Bobby D. Bryant [this message]
2004-12-29 17:46   ` Georg Bauhaus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox