On 11/05/2014 11:02 PM, Suliman wrote:
Replace that with something like writeln(caught) and you will see
that it is indeed caught. :) Printing the exception mimicks the
default behavior and you (and I) think that the exception is not
caught. :)
that's work, but I can not understand where I can
We have to look at the documentation of the function. In this
case the possibilities are FileException and UTFException.
http://dlang.org/phobos/std_file.html#.readText
However, judging by their names, they are both descendants of
Exception, so what you are doing will catch either of them.
void openFile(string fname, string current_folder)
{
auto file = readText(current_folder ~ fname);
scope(failure)
{
writeln(failure);
}
// writeln(file);
}
if file name do not exists, I want to rise scope exception. But
it's do not rise
I can't understand what I am missing. Try-catch block also do not
handle exception:
void main()
{
string fname = app.d1; //file name with error
string current_folder = (getcwd() ~\\);
writeln(current_folder);
openFile(fname, current_folder);
}
void
not exists, I want to rise scope exception. But
it's do not rise, and I am getting only standard error like:
std.file.FileException@std\file.d(191):
D:\code\d\App1\source\app.d1: ╨Э╨╡ ╤Г╨┤╨
░╨╡╤В╤Б╤П ╨╜╨░╨╣╤В╨╕ ╤Г╨║╨░╨╖╨░╨╜╨╜╤Л╨╣ ╤Д╨░╨╣╨╗.
what's wrong? if I use block success it's
On Wednesday, 5 November 2014 at 14:04:26 UTC, MadProgressor
wrote:
The scope(failure) is translated to a try catch after the
satement you wann monitor.
So put it before
That shouldn't matter. See: http://dlang.org/exception-safe.html
On Wed, 05 Nov 2014 14:09:20 +
Gary Willoughby via Digitalmars-d-learn
digitalmars-d-learn@puremagic.com wrote:
That shouldn't matter. See: http://dlang.org/exception-safe.html
this indeed matter. and it should.
signature.asc
Description: PGP signature
Am I right understand that keyword Exception is handle
universal type of exceptions?
catch (Exception)
{
writeln(inner);
}
But in my example with try block can I change it's to something
more informative?
On 11/05/2014 06:01 AM, Suliman wrote:
I can't understand what I am missing. Try-catch block also do not handle
exception:
I does. This turned out to be very tricky for me. :)
void main()
{
string fname = app.d1; //file name with error
string current_folder = (getcwd() ~\\);
Replace that with something like writeln(caught) and you will
see that it is indeed caught. :) Printing the exception mimicks
the default behavior and you (and I) think that the exception
is not caught. :)
that's work, but I can not understand where I can to look at
exception level. If I
10 matches
Mail list logo