diff --git a/JetCore.aux b/JetCore.aux deleted file mode 100644 index 3a60a28..0000000 --- a/JetCore.aux +++ /dev/null @@ -1,59 +0,0 @@ -\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 {section}{\numberline {2.1}User Defined Tags and Tag Liraries}{7}{}\protected@file@percent } -\@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 {section}{\numberline {3.1}Global Variables}{9}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.2}Local Variables}{9}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.3}Keyword Variables}{10}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.4}Environment Variables}{10}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.5}CGI Variables}{10}{}\protected@file@percent } -\@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}Operators}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}Arithmentic Operators}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.2}Boolean Operators}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4.2}Function Reference}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.1}concat}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.2}integer}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.3}left}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.4}random}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.5}round}{11}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2.6}substring}{12}{}\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}cookie}{15}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.4}dump}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.5}expr}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.6}for}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.7}header}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.8}if/else}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.9}ifrow/else}{16}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.10}include}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.11}jet}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.12}mysql}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.13}read}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.14}set}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.15}sql}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.16}stream}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.17}system}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.18}tag}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.19}until}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.20}while}{19}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.21}whiledir}{19}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.22}whilerow}{19}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.23}write}{19}{}\protected@file@percent } -\gdef \@abspage@last{19} diff --git a/JetCore.log b/JetCore.log deleted file mode 100644 index 67b31f1..0000000 --- a/JetCore.log +++ /dev/null @@ -1,122 +0,0 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2024.12.23) 6 JAN 2025 08:49 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**JetCore.txt -(./JetCore.txt -LaTeX2e <2023-11-01> patch level 1 -L3 programming layer <2024-01-22> -(/usr/share/texlive/texmf-dist/tex/latex/base/book.cls -Document Class: book 2023/05/17 v1.4n Standard LaTeX document class -(/usr/share/texlive/texmf-dist/tex/latex/base/bk10.clo -File: bk10.clo 2023/05/17 v1.4n Standard LaTeX file (size option) -) -\c@part=\count187 -\c@chapter=\count188 -\c@section=\count189 -\c@subsection=\count190 -\c@subsubsection=\count191 -\c@paragraph=\count192 -\c@subparagraph=\count193 -\c@figure=\count194 -\c@table=\count195 -\abovecaptionskip=\skip48 -\belowcaptionskip=\skip49 -\bibindent=\dimen140 -) -(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def -File: l3backend-pdftex.def 2024-01-04 L3 backend support: PDF output (pdfTeX) -\l__color_backend_stack_int=\count196 -\l__pdf_internal_box=\box51 -) -(./JetCore.aux) -\openout1 = `JetCore.aux'. - -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 7. -LaTeX Font Info: ... okay on input line 7. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <12> on input line 9. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <8> on input line 9. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <6> on input line 9. - [1 - - -{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2 - -] -(./JetCore.toc -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <7> on input line 3. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <5> on input line 3. - [3]) -\tf@toc=\write3 -\openout3 = `JetCore.toc'. - - [4] -Chapter 1. -[5 - -] [6 - -] -Chapter 2. -[7] [8 - -] -Chapter 3. -[9{/usr/share/texmf/fonts/enc/dvips/cm-super/cm-super-ts1.enc}] [10] -Chapter 4. -[11 - -] [12] -Chapter 5. -[13 - -] [14 - -] -Chapter 6. -[15] [16] [17] [18] [19] (./JetCore.aux) - *********** -LaTeX2e <2023-11-01> patch level 1 -L3 programming layer <2024-01-22> - *********** - ) -Here is how much of TeX's memory you used: - 508 strings out of 474222 - 9280 string characters out of 5748732 - 1932975 words of memory out of 5000000 - 22826 multiletter control sequences out of 15000+600000 - 564392 words of font info for 57 fonts, out of 8000000 for 9000 - 1141 hyphenation exceptions out of 8191 - 35i,6n,50p,159b,189s stack positions out of 10000i,1000n,20000p,200000b,200000s - -Output written on JetCore.pdf (19 pages, 131622 bytes). -PDF statistics: - 107 PDF objects out of 1000 (max. 8388607) - 69 compressed objects within 1 object stream - 0 named destinations out of 1000 (max. 500000) - 1 words of extra memory for PDF output out of 10000 (max. 10000000) - diff --git a/JetCore.pdf b/JetCore.pdf deleted file mode 100644 index 134e07c..0000000 Binary files a/JetCore.pdf and /dev/null differ diff --git a/JetCore.toc b/JetCore.toc deleted file mode 100644 index d450647..0000000 --- a/JetCore.toc +++ /dev/null @@ -1,45 +0,0 @@ -\contentsline {chapter}{\numberline {1}Introduction}{5}{}% -\contentsline {chapter}{\numberline {2}Tags and Attributes}{7}{}% -\contentsline {section}{\numberline {2.1}User Defined Tags and Tag Liraries}{7}{}% -\contentsline {chapter}{\numberline {3}Variables and Variable Types}{9}{}% -\contentsline {section}{\numberline {3.1}Global Variables}{9}{}% -\contentsline {section}{\numberline {3.2}Local Variables}{9}{}% -\contentsline {section}{\numberline {3.3}Keyword Variables}{10}{}% -\contentsline {section}{\numberline {3.4}Environment Variables}{10}{}% -\contentsline {section}{\numberline {3.5}CGI Variables}{10}{}% -\contentsline {chapter}{\numberline {4}Expressions}{11}{}% -\contentsline {section}{\numberline {4.1}Operators}{11}{}% -\contentsline {subsection}{\numberline {4.1.1}Arithmentic Operators}{11}{}% -\contentsline {subsection}{\numberline {4.1.2}Boolean Operators}{11}{}% -\contentsline {section}{\numberline {4.2}Function Reference}{11}{}% -\contentsline {subsection}{\numberline {4.2.1}concat}{11}{}% -\contentsline {subsection}{\numberline {4.2.2}integer}{11}{}% -\contentsline {subsection}{\numberline {4.2.3}left}{11}{}% -\contentsline {subsection}{\numberline {4.2.4}random}{11}{}% -\contentsline {subsection}{\numberline {4.2.5}round}{11}{}% -\contentsline {subsection}{\numberline {4.2.6}substring}{12}{}% -\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}cookie}{15}{}% -\contentsline {section}{\numberline {6.4}dump}{16}{}% -\contentsline {section}{\numberline {6.5}expr}{16}{}% -\contentsline {section}{\numberline {6.6}for}{16}{}% -\contentsline {section}{\numberline {6.7}header}{16}{}% -\contentsline {section}{\numberline {6.8}if/else}{16}{}% -\contentsline {section}{\numberline {6.9}ifrow/else}{16}{}% -\contentsline {section}{\numberline {6.10}include}{17}{}% -\contentsline {section}{\numberline {6.11}jet}{17}{}% -\contentsline {section}{\numberline {6.12}mysql}{17}{}% -\contentsline {section}{\numberline {6.13}read}{17}{}% -\contentsline {section}{\numberline {6.14}set}{17}{}% -\contentsline {section}{\numberline {6.15}sql}{18}{}% -\contentsline {section}{\numberline {6.16}stream}{18}{}% -\contentsline {section}{\numberline {6.17}system}{18}{}% -\contentsline {section}{\numberline {6.18}tag}{18}{}% -\contentsline {section}{\numberline {6.19}until}{18}{}% -\contentsline {section}{\numberline {6.20}while}{19}{}% -\contentsline {section}{\numberline {6.21}whiledir}{19}{}% -\contentsline {section}{\numberline {6.22}whilerow}{19}{}% -\contentsline {section}{\numberline {6.23}write}{19}{}% diff --git a/JetCore.txt b/JetCore.txt deleted file mode 100644 index 346e85f..0000000 --- a/JetCore.txt +++ /dev/null @@ -1,452 +0,0 @@ -\documentclass{book} - -\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 -modifications. Data contained within the tags may modify their -containers before placing any output. The space taken by the tag -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 -lines or line containing only whitespace to the output. - -\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 \ tag -in combination with the \, \ and \ tags. - -\section{User Defined Tags and Tag Liraries} - -You can define your own tag definitions and use them within your JET -scripts. - -Keywords are not defined as part of the tag definition and any -attribute added to the implementation of the tag is passed into the -tag process as a local variable for that container. - -Tag definitions can also be defined as scoped or unscoped, as follows: - -scoped - local variables using the \#[n] format can be scoped to just -your tag contents. Access to local variables where your tag is being -used must use the 'parent' scope option to retrieve variables from the -parent. - -unscoped - local variables are shared with the parent tag environment -and are not unique to your tag definition. - -A tag can be inserted into the container and will take -the contents of the container at runtime and insert it into the output -when processing the user defined tag definition. The container tag of -the the is processed before the container containing the - so that local variabls can be set and processed that -will affect the tags overall output. - -Tags are many times nested with tags running within the container of a -higher tag. - - - -\chapter{Variables and Variable Types} - -Variables are used to contain dynamic content values and can be -sourced from several locations and limited in scope depending on use. -Some variable types can be set to reflect script state or are read -only from other outside sources of data. - -Jet tags can be either scoped or unscoped. - -The following is a list of -variable types and a brief description of their source: - -\begin{itemize} - -\item Global - values can be initiaized using the set tag and -specifying the scope of global. - -\item Local - - -\item Keyword - within a tag's container we may access the keyword -values specified on the containing tag. - -\end{itemize} - -\section{Global Variables} - -Global variables are available to all logic once the values have been -set. - -Global variables are accessed throughout the procedure with the -\$[name] syntax. - -Global is the default if the scope is -not specified for any function that writes to a variable. - -\section{Local Variables} - -Local variables are established using the set tag and specifying a -scope of local. Local variables are typically only available within -the container where they are defined. Some containers may not be -capable of storing local variables (i.e. set tag) and are inheriting -the local scope from their parent tag. - -\section{Keyword Variables} - -Keyword variables are set when they are specified on a containing tag. -Within the container you can access the variable using the syntax -\$[\%name]. - -The variable retrieved is not processed for variable resolution. - -\section{Environment Variables} - -\section{CGI Variables} - -When operating Jet in CGI mode you have access to the form data -submitted by the remote client (usually a browser or curl request) -using the POST method. - -\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{Operators} - -Operators are used to perform arithmetic or boolean operations on -arguments to derive a particular result. There are two types of -operators, as follows: - -\begin{itemize} - -\item Arithmetic - - -\item Boolean - - -\end{itemize} - -\subsection{Arithmentic Operators} - -\subsection{Boolean Operators} - - -\section{Function Reference} - -\subsection{concat} - -\subsection{integer} - -\subsection{left} - -\subsection{random} - -Use the random function to return a random number between 0 and 1. - -\subsection{round} - -Use the round function to round a numeric value to the specified -number of digits after the decimal point. - -\subsection{substring} - -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 tag containing the document or - 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} - -Use the call tag to evoke an executable file from a jet script. - -The atrributes are: - -pgm - -argn - -name - -input - -error - -The call tag is unscoped. - -\begin{verbatim} - -\end{verbatim} - -will call the ls command with parameter -al and place the output into -a variable named 'listing'. - -\section{comment} - -Use the comment tag to create a section in the jet script that can be -used for making comments and is ignored by the jet reader. - -The comments tag has no attributes. - -\section{cookie} - -Use the cookie tag to specify a cookie when using the CGI features -of JET. - -\section{dump} - -Use the dump tag to display the contents of all the global, local and -cgi cariables to a specified file. - -The attributes are: - -file - -\section{expr} - -\section{for} - -Use the for tag to iterate a tag container for a logical number of -times. - -The attributes are: - -start - -end - -step - -name - defines a name for the iterator that will be available within -the loop. - -scope - defines the scope of the iterator for the loop. - -\section{header} - -Use the header tag to output a header prior to outputting the process -buffer to the requester. - -The attributes are: - -name - -expr - -value - -container - -\section{if/else} - -Use the if tag to perform a conditional output on the tag container. -An optional else container provides alternate output in the event the -condition is not met. - -The attributes are: - -value1 - -value2 - -type - -expr - -\section{ifrow/else} - -Use the ifrow tag to output the tag container if a row exists in the -mysql tag. An optional else container provides alternate output in the -event that there is no row for the sql result. - -The attributes are: - -sessionid - -\section{include} - -Use the include tag to include another content file at the location of -the include tag. - -The attributes are: - -file - -\section{jet} - -Use the jet tag to specify parameters for the jet parsing session and -to control the output options. - -\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. The mysql session created is valid only withon the -container of this tag. - -The attributes are: - -host - -database - -user - -password - -sessionid - -\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. - -The attributes are: - -file - -name - -\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. - -The attributes are: - -name - -expr - -value - -container - -scope - -\section{sql} - -Use the sql tag to specify an sql statement to run on the sql server -specified in the mysql tag. - -As long as sql statements are executed within the same mysql -containing tag then the same mysql session is used for each sql -statement. - -The attributes are: - -sessionid - -container - -\section{stream} - -Use stream tag to output data from the server without waiting for the -standard output buffering and processing of the JET script. This is -useful for outputting images and streams for audio and video without -the server having to load the whole thing into RAM first. - -The attributes are: - -file - -\section{system} - -Use the system tag to execute a bash shell command within the JET -script. - -\section{tag} - -Use the tag tag to define a new tag definition for use within the -script. - -Tags are normally defined globally and can be used anywhere within the -script. - -Tags can also be defined within other tags and the scope of those tags -is only within the defining tag's container. The enclosed tag -definition will not be available globally. - -\section{until} - -Use the until tag to process a container at least once and -continue to process the container until the specified condition is met. - -Note that this tag always processes the container at least once. - -Be careful not to create a never ending loop by not modifying any of -the condition parameters specified in the condition clause. - -\section{while} - -Use the while tag to process a container if the specified condition is -true. - -Note that the container may not be processed if the condition is never -met. - -Be careful not to create a never ending loop by not modifying any of -the condition parameters specified in the condition clause. - -\section{whiledir} - -Use the whiledir tag to loop a directory path to the container for -processing. - -\section{whilerow} - -Use the whilerow tag in combination with mysql and sql tags to provide -a container to process for each row retrieved by the sql statement. - -\section{write} - -Use the write tag to write data to the local file system. - -\end{document} \ No newline at end of file diff --git a/Tag.cpp b/Tag.cpp index 9120131..9fa8990 100644 --- a/Tag.cpp +++ b/Tag.cpp @@ -5,6 +5,7 @@ #include "__sql.h" #include "__whilerow.h" #include "__comment.h" +#include "__exclude.h" #include "__for.h" #include "__if.h" #include "__ifrow.h" @@ -134,7 +135,17 @@ namespace jet { coreutils::ZString tag; char *start = in.getCursor(); while(!in.eod()) { - if(in.startsWith("<")) { + if(in.ifNext("|>")) { + out.write("|>"); + char ch = in.nextChar(); + while(!in.ifNext("<|")) { + out.write(ch); + ch = in.nextChar(); + } + out.write(ch); + out.write("<|"); + continue; + } else if(in.startsWith("<")) { if(ifTagName(in, "mysql")) { __mysql _mysql(in, out, global, this, local); continue; @@ -159,6 +170,9 @@ namespace jet { } else if(ifTagName(in, "include")) { __include _include(in, out, global, this, local); continue; + } else if(ifTagName(in, "exclude")) { + __exclude _exclude(in, out, global, this, local); + continue; } else if(ifTagName(in, "jet")) { __jet _jet(in, out, global, this, local); continue; diff --git a/__jet.cpp b/__jet.cpp index 3f5ce18..90ab0e0 100644 --- a/__jet.cpp +++ b/__jet.cpp @@ -28,7 +28,7 @@ namespace jet { SHA1(hashit, strlen((char *)hashit), hash); sprintf(hashname, "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", hash[0], hash[1], hash[2], hash[3], hash[4], hash[5], hash[6], hash[7], hash[8], hash[9], - hash[10], hash[11], hash[12], hash[13], hash[14], hash[15], hash[16], hash[17], hash[18], hash[19]); + hash[10], hash[11], hash[12], hash[13], hash[14], hash[15], hash[16], hash[17], hash[18], hash[19]); coreutils::ZString sessionCookie(hashname); global.headers["Set-Cookie"] << "session=" << sessionCookie; if(keywordDefined("sessiontimeout")) { diff --git a/tests/testjet.jet b/tests/testjet.jet index c45db43..974334c 100755 --- a/tests/testjet.jet +++ b/tests/testjet.jet @@ -25,6 +25,8 @@ $[nested] + |>This should be passed $[error] by the parser without parsing. + <| 0123456789 $[numbers]