summaryrefslogtreecommitdiffabout
path: root/htdocs/exceptions
authorMichael Krelin <hacker@klever.net>2005-04-03 11:49:01 (UTC)
committer Michael Krelin <hacker@klever.net>2005-04-03 11:49:01 (UTC)
commitd3e8a3f68b62668af9bc992e94dfb3c822d270dc (patch) (side-by-side diff)
tree87a5f43f5075dcfc0c0033a4ca50eb990d498e70 /htdocs/exceptions
parent85471d7c2c74035399ba7047f409fe6248e1d6f0 (diff)
downloadsitecing-d3e8a3f68b62668af9bc992e94dfb3c822d270dc.zip
sitecing-d3e8a3f68b62668af9bc992e94dfb3c822d270dc.tar.gz
sitecing-d3e8a3f68b62668af9bc992e94dfb3c822d270dc.tar.bz2
made use of pragma main
Diffstat (limited to 'htdocs/exceptions') (more/less context) (show whitespace changes)
-rw-r--r--htdocs/exceptions/compile.chtml3
-rw-r--r--htdocs/exceptions/index.chtml3
-rw-r--r--htdocs/exceptions/preprocess.chtml3
-rw-r--r--htdocs/exceptions/runtime.chtml3
4 files changed, 8 insertions, 4 deletions
diff --git a/htdocs/exceptions/compile.chtml b/htdocs/exceptions/compile.chtml
index 68dd034..94bd2e1 100644
--- a/htdocs/exceptions/compile.chtml
+++ b/htdocs/exceptions/compile.chtml
@@ -1,34 +1,35 @@
-% html(); return; /* vim:set ft=sitecing: */
+% /* vim:set ft=sitecing: */
%%derive layout = "/ancestry/layout.chtml";
+%%pragma main=page
<%constructor>
b_strict = false;
PN_PREV("/exceptions/preprocess","preprocess","preprocessing errors");
PN_NEXT("/exceptions/runtime","runtime","runtime exceptions");
</%constructor>
<%codemethod string title() %>
return "compile-time exceptions handling";
</%codemethod>
<%method void content() %>
<h1>site-C-ing compile-time exception handling</h1>
<p>
Similar to <a href="/exceptions/preprocess">preprocessing exceptions</a>
there is a wide range of errors you may put into your code which will pass
through preprocessor and will be caught later at the compile-time.
</p>
<p>
Once you complete writing your <a
href="/view/htdocs/exceptions/development/compile.chtml" target="insert"
title="the link opens in the frame below">erroneous code</a> and
<em>site-C-ing</em> is done preprocessing it, it will feed the preprocessed
code into c++ compiler which will refuse to compile the code like this. This
is where <a href="/view/htdocs/handlers/exception_dev" target="insert"
title="the link opens in the frame below">the exception handler</a>,
specified in <a href="/view/htdocs/exceptions/development/.scrc"
target="insert" title="the link opens in the frame below">the configuration
file</a>, takes over the process and gives you <a
href="/exceptions/development/compile" target="insert" title="the link opens
in the frame below">the report</a>. Like with any handler, you may wish to
set some <a href="/view/htdocs/handlers/exception_prod" target="insert"
title="the link opens in the frame below">different handler</a> in your <a
href="/view/htdocs/exceptions/production/.scrc" target="insert" title="the
link opens in the frame below">production configuration</a>, which just gives
diff --git a/htdocs/exceptions/index.chtml b/htdocs/exceptions/index.chtml
index 6bb2a3c..c700e42 100644
--- a/htdocs/exceptions/index.chtml
+++ b/htdocs/exceptions/index.chtml
@@ -1,34 +1,35 @@
-% html(); return; /* vim:set ft=sitecing: */
+% /* vim:set ft=sitecing: */
%%derive layout = "/ancestry/layout.chtml";
+%%pragma main=page
<%constructor>
PN_PREV("/simple","simple page","building a really simple page");
PN_NEXT("/exceptions/preprocess","preprocess","preprocessing errors");
</%constructor>
<%codemethod string title() %>
return "exceptions handling";
</%codemethod>
<%method void content() %>
<h1>site-C-ing exception handling</h1>
<p>
The purpose of this section is to give an overview of the <em>site-C-ing</em>
exception handling mechanism. Before the web visitor can see the page each
site-C-ing component goes through a few stages, namely, preprocessing,
compiling and execution. Having three stages to go through also means three
stages one can fail to go through and three exciting opportunities to handle
different errors.
</p>
<p>
First each component is preprocessed so that you can feed the valid c++ code
to the compiler. Here is where the preprocessor can choke at your broken
source code. Once preprocessor failes to parse your code it will throw an
exception which <em>site-C-ing</em> will catch and pass to <a
href="/sources/htdocs/handlers/exception_dev" title="development mode
exception handler source">the exception handler component</a>. Want to <a
href="/exceptions/preprocess">read more</a> about preprocessor exception
handling?
</p>
<p>
After the preprocessing stage is over we have a great opportunity to catch
the compile-time errors. After <em>site-C-ing</em> fails to compile the
component it throws another exception and passes it to the same handler which
may show you some information on what's gone wrong with your source code from
diff --git a/htdocs/exceptions/preprocess.chtml b/htdocs/exceptions/preprocess.chtml
index 88b8741..e42b102 100644
--- a/htdocs/exceptions/preprocess.chtml
+++ b/htdocs/exceptions/preprocess.chtml
@@ -1,34 +1,35 @@
-% html(); return; /* vim:set ft=sitecing: */
+% /* vim:set ft=sitecing: */
%%derive layout = "/ancestry/layout.chtml";
+%%pragma main=page
<%constructor>
b_strict = false;
PN_PREV("/exceptions","exceptions","exception handling overview");
PN_NEXT("/exceptions/compile","compile-time","compile-time errors");
</%constructor>
<%codemethod string title() %>
return "preprocessor exceptions handling";
</%codemethod>
<%method void content() %>
<h1>site-C-ing preprocessor exception handling</h1>
<p>
It was one of those days when you just can't type right and can't think of
what you're typing. It is not unusual that, under such circumstances, you end
up with a code like <a
href="/view/htdocs/exceptions/development/preprocess.chtml" target="insert"
title="the link opens in the frame below">this</a> -- by the time you were
about to close your <code>&lt;%code&gt;</code> block you were thinking about
some constructor in some component elsewhere in the universe.
</p>
<p>
<em>site-C-ing</em> parser will see the inconsistency and throw an exception
which will be caught and passed to <a
href="/view/htdocs/handlers/exception_dev" target="insert" title="the link
opens in the frame below">the handler</a>, specified in <a
href="/view/htdocs/exceptions/development/.scrc" target="insert" title="the
link opens in the frame below">the configuration file</a>, which will produce
some nice, human-readable <a href="/exceptions/development/preprocess"
target="insert" title="the link opens in the frame below">output</a>. Well,
you may not wish to give out all this information in the production
environment, so you just put in your <a
href="/view/htdocs/exceptions/production/.scrc" target="insert" title="the
link opens in the frame below">configuration file</a> some <a
diff --git a/htdocs/exceptions/runtime.chtml b/htdocs/exceptions/runtime.chtml
index 1fcd80f..989e89f 100644
--- a/htdocs/exceptions/runtime.chtml
+++ b/htdocs/exceptions/runtime.chtml
@@ -1,34 +1,35 @@
-% html(); return; /* vim:set ft=sitecing: */
+% /* vim:set ft=sitecing: */
%%derive layout = "/ancestry/layout.chtml";
+%%pragma main=page
<%constructor>
b_strict = false;
PN_PREV("/exceptions/compile","compile-time","compile-time errors");
PN_NEXT("/quickref/","quick reference","quick reference");
</%constructor>
<%codemethod string title() %>
return "runtime exceptions handling";
</%codemethod>
<%method void content() %>
<h1>site-C-ing runtime exception handling</h1>
<p>
The component may throw an exception while executing and the
<em>site-C-ing</em> will gladly pass it to the handler component which will
give the user appropriate output (unless it throws an exception itself, of
course). Here you will see an example output provided by the handler bundled
with the <em>site-C-ing</em>.
</p>
<p>
Suppose you have <a href="/view/htdocs/exceptions/development/runtime.chtml"
target="insert" title="the link opens in the frame below">a component</a>,
which at some point throws an exception. Of course, <em>site-C-ing</em> will
catch the exception and pass it to <a
href="/view/htdocs/handlers/exception_dev" target="insert" title="the link
opens in the frame below">the handler</a>, specified in <a
href="/view/htdocs/exceptions/development/.scrc" target="insert" title="the
link opens in the frame below">the configuration file</a>, which will produce
some nice, human-readable <a href="/exceptions/development/runtime"
target="insert" title="the link opens in the frame below">output</a>. Well,
you may not wish to give out all this information in the production
environment, so you just put in your <a
href="/view/htdocs/exceptions/production/.scrc" target="insert" title="the