Updated JetCore.txt documentation.

This commit is contained in:
Brad Arant 2024-10-28 12:35:47 -07:00
parent c1e003e552
commit d139a4b39e
8 changed files with 1209 additions and 6 deletions

View File

@ -1 +0,0 @@
barant@barant01.5084

41
JetCore.aux Normal file
View File

@ -0,0 +1,41 @@
\relax
\@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction}{5}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {chapter}{\numberline {2}Tags and Attributes}{7}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {chapter}{\numberline {3}Variables and Variable Types}{9}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {chapter}{\numberline {4}Expressions}{11}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {section}{\numberline {4.1}Functions and Operators}{11}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}left(string, number-of-characters)}{11}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.2}substring(string, start-position, number-of-characters}{11}{}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {5}Common Gateway Interface Features}{13}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {chapter}{\numberline {6}Tag Reference}{15}{}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\@writefile{toc}{\contentsline {section}{\numberline {6.1}call}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.2}comment}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.3}for}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.4}header}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.5}if/else}{15}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.6}ifrow/else}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.7}jet}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.8}mysql}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.9}read}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.10}set}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.11}sql}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.12}stream}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.13}system}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.14}tag}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.15}while}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.16}whiledir}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.17}whilerow}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.18}write}{17}{}\protected@file@percent }
\gdef \@abspage@last{17}

1037
JetCore.log Normal file

File diff suppressed because it is too large Load Diff

BIN
JetCore.pdf Normal file

Binary file not shown.

27
JetCore.toc Normal file
View File

@ -0,0 +1,27 @@
\contentsline {chapter}{\numberline {1}Introduction}{5}{}%
\contentsline {chapter}{\numberline {2}Tags and Attributes}{7}{}%
\contentsline {chapter}{\numberline {3}Variables and Variable Types}{9}{}%
\contentsline {chapter}{\numberline {4}Expressions}{11}{}%
\contentsline {section}{\numberline {4.1}Functions and Operators}{11}{}%
\contentsline {subsection}{\numberline {4.1.1}left(string, number-of-characters)}{11}{}%
\contentsline {subsection}{\numberline {4.1.2}substring(string, start-position, number-of-characters}{11}{}%
\contentsline {chapter}{\numberline {5}Common Gateway Interface Features}{13}{}%
\contentsline {chapter}{\numberline {6}Tag Reference}{15}{}%
\contentsline {section}{\numberline {6.1}call}{15}{}%
\contentsline {section}{\numberline {6.2}comment}{15}{}%
\contentsline {section}{\numberline {6.3}for}{15}{}%
\contentsline {section}{\numberline {6.4}header}{15}{}%
\contentsline {section}{\numberline {6.5}if/else}{15}{}%
\contentsline {section}{\numberline {6.6}ifrow/else}{16}{}%
\contentsline {section}{\numberline {6.7}jet}{16}{}%
\contentsline {section}{\numberline {6.8}mysql}{16}{}%
\contentsline {section}{\numberline {6.9}read}{16}{}%
\contentsline {section}{\numberline {6.10}set}{16}{}%
\contentsline {section}{\numberline {6.11}sql}{17}{}%
\contentsline {section}{\numberline {6.12}stream}{17}{}%
\contentsline {section}{\numberline {6.13}system}{17}{}%
\contentsline {section}{\numberline {6.14}tag}{17}{}%
\contentsline {section}{\numberline {6.15}while}{17}{}%
\contentsline {section}{\numberline {6.16}whiledir}{17}{}%
\contentsline {section}{\numberline {6.17}whilerow}{17}{}%
\contentsline {section}{\numberline {6.18}write}{17}{}%

View File

@ -1,29 +1,96 @@
\documentclass{refman}
\title{JET Extension Tags}
\author{Bradford Matthew Arant Sr.}
\date{\today}
\begin{document}
\maketitle
\tableofcontents
\chapter{Introduction}
JET will pass through the untagged areas to the output without any JET will pass through the untagged areas to the output without any
modifications. Data contained within the tags may modify their modifications. Data contained within the tags may modify their
containers before placing any output. The space taken by the tag containers before placing any output. The space taken by the tag
itself is not passwed to the output and will not appear in the output. itself is not passed to the output and will not appear in the output.
Skip Blank Lines options on containers will skip passing any blank Skip Blank Lines options on containers will skip passing any blank
lines or line containing only whitespace to the output. lines or line containing only whitespace to the output.
\chapter{Tags} \chapter{Tags and Attributes}
XML style tagging is used to insert functions and other behaviors into
the script. As the document contents are output a tag may be inserted
to perform the desired function and affect the output.
Tag attributes are used to pass parameters into the operations and
functionality for each tag.
Outputting a database from mysql may be performed using the <mysql> tag
in combination with the <ifrow>, <whilerow> and <sql> tags.
\chapter{Variables and Variable Types}
\chapter{Expressions}
Expressions are used to perform complicated calculations (arithmetic), perform
comparisons between values (boolean), manipulate strings (string) or
perform operations on dates (date).
\section{Functions and Operators}
\subsection{left(string, number-of-characters)}
\subsection{substring(string, start-position, number-of-characters}
Use the substring operation to extract a portion of a string and return
the value as a string.
\chapter{Common Gateway Interface Features}
JET extension tags provides options for enabling the processing of
data using the Common Gateway Interface (CGI) specification used by
Apache and NGINX as well as other HTTP server applications. This makes
JET a powerful tool for creating web interfaces and API handler
environments for various javascript frameworks as well as just native
HTML style interaction.
To enable the CGI features within a requested document you can specify
the cgi="true" attribute on a <jet> tag containing the document or
<jet /> tag contained within the document.
When you enable the CGI interface the script will look for specific
environment variables used to retrieve the input data from the browser
interface and automatically provide these values to the JET scripting
using the variables interface. There are currently three supported
data formats or content types through this interface. These content
types are:
formdata/urlencoded
mutipart/formdata
text/json
\chapter{Tag Reference}
This chapter will cover all the tags and parameters required to
perform the operations that JET provides.
\section{call} \section{call}
Use the call tag to evoke an executable file from a jet script. Use the call tag to evoke an executable file from a jet script.
\section{comment} \section{comment}
Use the comment tag to create a section in the jet script that is Use the comment tag to create a section in the jet script that can be
ignored. used for making comments and is ignored by the jet reader.
\section{for} \section{for}
@ -48,16 +115,38 @@ mysql tag.
\section{jet} \section{jet}
Use the jet tag to specify parameters for the jet parsing session and
to control the output options.
\section{mysql} \section{mysql}
Use the mysql tag to specify parameters for connecting to a mysql
server. The container of the tag is where you can specify the sql
statement and method of processing the result output of the executed
sql statement.
\section{read} \section{read}
Use the read tag to read the contents of a file contained on the local
file system into a variable for further output or processing.
\section{set} \section{set}
Use the set tag to store initialize a variable to a value contained in
a value attribute, the result of an expression (expr) attribute or the
contents of the set tag container.
\section{sql} \section{sql}
\section{stream}
\section{system} \section{system}
\section{tag}
\section{while} \section{while}
\section{whiledir} \section{whiledir}
@ -66,3 +155,4 @@ mysql tag.
\section{write} \section{write}
\end{document}

View File

@ -168,7 +168,8 @@ namespace jet {
} else if(ifTagName(in, "tag")) { } else if(ifTagName(in, "tag")) {
__tag _tag(in, out, global); __tag _tag(in, out, global);
continue; continue;
} else if(tags.contains(in)) { } else if(global.tags.contains(in)) {
std::cout << "finding tag" << std::endl;
__tag _tag(in, out, global); __tag _tag(in, out, global);
continue; continue;
} else { } else {

8
testtag.jet Executable file
View File

@ -0,0 +1,8 @@
#!./jet-2.0
<tag named="test">
<set name="ix" expr="$[ix]+1" />
$[ix]
</tag>
<set name="ix" value="1" />
<test />
<test />