Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread michael . vancanneyt



On Mon, 28 Feb 2011, Michael Fuchs wrote:


Hello,

while porting software from .NET to FreePascal I am looking for some 
exceptions for recurrent errors. For example:


ArgumentException, ArgumentNullException, ArgumentOutOfRangeException

Is there a unit which defines those exceptions?


These exact exceptions are not defined. The SysUtils unit defines the most
standard exceptions, as well as the Classes unit.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Sven Barth

Am 28.02.2011 13:51, schrieb Michael Fuchs:

Hello,

while porting software from .NET to FreePascal I am looking for some
exceptions for recurrent errors. For example:

ArgumentException, ArgumentNullException, ArgumentOutOfRangeException

Is there a unit which defines those exceptions?


As far as I'm aware of: There are none.

There is ERangeError though (in SysUtils), but that's not an equivalent 
for ArgumentOutOfRangeException (I suppose that inherits from 
ArgumentException?).


Regards,
Sven
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Michael Fuchs

Am 28.02.2011 14:17, schrieb Sven Barth:

As far as I'm aware of: There are none.

There is ERangeError though (in SysUtils), but that's not an equivalent
for ArgumentOutOfRangeException (I suppose that inherits from
ArgumentException?).


Yes,and all Argument..Exceptions have a property ParamName:String 
containing the parameter which causes the error.


I also miss a NotImplementedException (or ENotImplemented in FPC style), 
very handy for test driven development. :)


And by the way: how about a InnerException for the SysUtils.Exception 
class? This would be nice if you want to wrap an exception around another.


Are there any chances for implement this?

regards
Michael
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Marcos Douglas
On Mon, Feb 28, 2011 at 9:51 AM, Michael Fuchs
freepas...@ypa-software.de wrote:
 Hello,

 while porting software from .NET to FreePascal I am looking for some
 exceptions for recurrent errors. For example:

 ArgumentException, ArgumentNullException, ArgumentOutOfRangeException

 Is there a unit which defines those exceptions?

I never heard anybody said do this conversion...
Well, do not exists these Classes in FPC. Not exists a place for all
Exception classes but the first classe to exceptions is declared in
SysUtils unit.


Marcos Douglas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Jonas Maebe

On 28 Feb 2011, at 13:51, Michael Fuchs wrote:

 while porting software from .NET to FreePascal I am looking for some 
 exceptions for recurrent errors. For example:
 
 ArgumentException, ArgumentNullException, ArgumentOutOfRangeException

None of these exist in Pascal. You can get exceptions for range check errors 
(ERangeError) in case you enable range checking and include the sysutils unit 
in your uses clause, but in that case range checking will be performed for all 
assignments, not just for passed arguments (and the range is checked by the 
compiler at the caller side based on the declared parameter types, not at the 
callee side). There are only a few routines in the RTL that explicitly raise it 
after explicitly checking their arguments.

There are no generic equivalents to ArgumentException and ArgumentNullException 
(when asking such questions in the future, you may also want to include a 
reference to a web page that describes what they mean, it makes it easier for 
people to answer you).

 Is there a unit which defines those exceptions?

Most general exception types are defined in the sysutils unit. In many cases, 
routines return an error code rather than throwing an exception though. And if 
they throw an exception, it's quite likely that it's specific to that routine 
rather than of some generic type. The FPC manuals list per routine what happens 
in case of errors.


Jonas___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Vinzent Höfler
On Tue, 01 Mar 2011 12:38:27 +0100, Michael Fuchs  
freepas...@ypa-software.de wrote:


I also miss a NotImplementedException (or ENotImplemented in FPC style),  
very handy for test driven development. :)


Yeah. And

type
   //-- @abstract(Obvious coding error.)
   Coder_Needs_Coffee = class (SysUtils.Exception);

was very handy for those me stupid situations.

;)


Vinzent.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] XHTML writer support in fcl-xml

2011-03-01 Thread leledumbo
Right now, fcl-xml only contains writer for THTMLDocument class from
htmlelements unit. There's also another THTMLDocument class in dom_html unit
which is used as a base class of TXHTMLDocument in xhtml unit. First, why
the separation? Second, is there any plan to have writer support for
TXHTMLDocument? I need to produce strict xhtml document dynamically.

-- 
View this message in context: 
http://free-pascal-general.1045716.n5.nabble.com/XHTML-writer-support-in-fcl-xml-tp3404505p3404505.html
Sent from the Free Pascal - General mailing list archive at Nabble.com.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Fwd: Problem

2011-03-01 Thread Michael Van Canneyt



On Tue, 1 Mar 2011, Jonas Maebe wrote:

To Rocco: the correct address to send messages for the list to is 
fpc-pascal@lists.freepascal.org



Begin forwarded message:


From: ROCCO DALTO roccoandr...@verizon.net
Date: Tue 1 Mar 2011 01:13:08 GMT+01:00
To: fpc-pascal-boun...@lists.freepascal.org
Subject: Probem!


Thank You for responding.

Problem:Still Cannot Run Programs Compiled In Free Pascal At My Website.

I constructed math software in Turbo Pascal 7.0 and put some sample 
programs on my current website at http://www.mathtut.biz.

The programs run fine at my site.
I recently downloaded Free Pascal and modified some programs I constructed 
in Turbo Pascal 7.0.
The problem is that the applications(complied in Free Pascal) run fine 
everywhere except at my website above(Using Host Monster).

The file cannot be found on the server when running from website.
Can you explain why?
Can you provide a solution?
Also,the programs loaded in the control panel(Host Monster) which where 
written in Turbo Pascal 7.0 are type text/x-generic and programs written 
in Free Pascal are type application/x-msdownload.

Host Monster claimed the problem is with Free Pascal.


What exactly do they claim ?

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Standard exceptions

2011-03-01 Thread Marco van de Voort
In our previous episode, Jonas Maebe said:
 None of these exist in Pascal. You can get exceptions for range check errors 
 (ERangeError) in case you enable range checking and include the sysutils unit 
 in your uses clause, but in that case range checking will be performed for 
 all assignments, not just for passed arguments (and the range is checked by 
 the compiler at the caller side based on the declared parameter types, not at 
 the callee side). There are only a few routines in the RTL that explicitly 
 raise it after explicitly checking their arguments.
 
 There are no generic equivalents to ArgumentException and
 ArgumentNullException (when asking such questions in the future, you may
 also want to include a reference to a web page that describes what they
 mean, it makes it easier for people to answer you).

C# has nullable types, and my guess would be that the ArgumentNullexception
happens you assign/pass a nullable value with NULL to a non-nullable
equivalent.

So it could be that it corresponds to some EVariantisnull error, but that is
a bit of a stretch.
 
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Consumer producer unit (donation to fcl)

2011-03-01 Thread Jorge Aldo G. de F. Junior
i have implemented a small consumer x producer unit (ie: threads that
produce or consume tobjects)

it is thread safe (based around a tthreadsafequeue with signalling -
the thread can sleep/wait arbitrary timeout time while its queue is
empty waiting for the producer)

is it interesting for the fcl ?

i want to donate it, and i think it can be incremented with other functions.

currently theres the following :

TProducer (thread that produces tobjects, placing then on the queue of
a consumer)
TConsumer (thread that consumes tobjects thru a queue)
TConsumerProducer (kind of a proxy, that consumes tobjects in a side,
process them and sends then to another consumer, it inherits from
TConsumer)
TRandomMultiplexerProducerConsumerThread (similar to the previous, but
has more than one consumer attached, it selects the next one to send
its tobjects by random)
TRoundRobinMultiplexerProducerConsumerThread (similar to the previous,
but instead of random chance, uses a round robing fashion)
TCustomAddressableMultiplexer (similar to the previous, but allows a
kind of addressability of the tobjects, selecting with consumer to
send to, by using a message address and a hashtable -
tfphashobjectlist)

Now i am developing bus and other models (various threads sharing a
bus to send messages to each other, where each thread has an address).

but the basic implementation evolves around the consumer producer model.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal