touched up code a bit
This commit is contained in:
parent
3707f4dca8
commit
773f5cec57
302
qse/LICENSE
302
qse/LICENSE
@ -1,202 +1,166 @@
|
|||||||
|
GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
Apache License
|
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||||
Version 2.0, January 2004
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
http://www.apache.org/licenses/
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
||||||
|
|
||||||
1. Definitions.
|
This version of the GNU Lesser General Public License incorporates
|
||||||
|
the terms and conditions of version 3 of the GNU General Public
|
||||||
|
License, supplemented by the additional permissions listed below.
|
||||||
|
|
||||||
"License" shall mean the terms and conditions for use, reproduction,
|
0. Additional Definitions.
|
||||||
and distribution as defined by Sections 1 through 9 of this document.
|
|
||||||
|
|
||||||
"Licensor" shall mean the copyright owner or entity authorized by
|
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||||
the copyright owner that is granting the License.
|
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||||
|
General Public License.
|
||||||
|
|
||||||
"Legal Entity" shall mean the union of the acting entity and all
|
"The Library" refers to a covered work governed by this License,
|
||||||
other entities that control, are controlled by, or are under common
|
other than an Application or a Combined Work as defined below.
|
||||||
control with that entity. For the purposes of this definition,
|
|
||||||
"control" means (i) the power, direct or indirect, to cause the
|
|
||||||
direction or management of such entity, whether by contract or
|
|
||||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
||||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
||||||
|
|
||||||
"You" (or "Your") shall mean an individual or Legal Entity
|
An "Application" is any work that makes use of an interface provided
|
||||||
exercising permissions granted by this License.
|
by the Library, but which is not otherwise based on the Library.
|
||||||
|
Defining a subclass of a class defined by the Library is deemed a mode
|
||||||
|
of using an interface provided by the Library.
|
||||||
|
|
||||||
"Source" form shall mean the preferred form for making modifications,
|
A "Combined Work" is a work produced by combining or linking an
|
||||||
including but not limited to software source code, documentation
|
Application with the Library. The particular version of the Library
|
||||||
source, and configuration files.
|
with which the Combined Work was made is also called the "Linked
|
||||||
|
Version".
|
||||||
|
|
||||||
"Object" form shall mean any form resulting from mechanical
|
The "Minimal Corresponding Source" for a Combined Work means the
|
||||||
transformation or translation of a Source form, including but
|
Corresponding Source for the Combined Work, excluding any source code
|
||||||
not limited to compiled object code, generated documentation,
|
for portions of the Combined Work that, considered in isolation, are
|
||||||
and conversions to other media types.
|
based on the Application, and not on the Linked Version.
|
||||||
|
|
||||||
"Work" shall mean the work of authorship, whether in Source or
|
The "Corresponding Application Code" for a Combined Work means the
|
||||||
Object form, made available under the License, as indicated by a
|
object code and/or source code for the Application, including any data
|
||||||
copyright notice that is included in or attached to the work
|
and utility programs needed for reproducing the Combined Work from the
|
||||||
(an example is provided in the Appendix below).
|
Application, but excluding the System Libraries of the Combined Work.
|
||||||
|
|
||||||
"Derivative Works" shall mean any work, whether in Source or Object
|
1. Exception to Section 3 of the GNU GPL.
|
||||||
form, that is based on (or derived from) the Work and for which the
|
|
||||||
editorial revisions, annotations, elaborations, or other modifications
|
|
||||||
represent, as a whole, an original work of authorship. For the purposes
|
|
||||||
of this License, Derivative Works shall not include works that remain
|
|
||||||
separable from, or merely link (or bind by name) to the interfaces of,
|
|
||||||
the Work and Derivative Works thereof.
|
|
||||||
|
|
||||||
"Contribution" shall mean any work of authorship, including
|
You may convey a covered work under sections 3 and 4 of this License
|
||||||
the original version of the Work and any modifications or additions
|
without being bound by section 3 of the GNU GPL.
|
||||||
to that Work or Derivative Works thereof, that is intentionally
|
|
||||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
||||||
or by an individual or Legal Entity authorized to submit on behalf of
|
|
||||||
the copyright owner. For the purposes of this definition, "submitted"
|
|
||||||
means any form of electronic, verbal, or written communication sent
|
|
||||||
to the Licensor or its representatives, including but not limited to
|
|
||||||
communication on electronic mailing lists, source code control systems,
|
|
||||||
and issue tracking systems that are managed by, or on behalf of, the
|
|
||||||
Licensor for the purpose of discussing and improving the Work, but
|
|
||||||
excluding communication that is conspicuously marked or otherwise
|
|
||||||
designated in writing by the copyright owner as "Not a Contribution."
|
|
||||||
|
|
||||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
2. Conveying Modified Versions.
|
||||||
on behalf of whom a Contribution has been received by Licensor and
|
|
||||||
subsequently incorporated within the Work.
|
|
||||||
|
|
||||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
If you modify a copy of the Library, and, in your modifications, a
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
facility refers to a function or data to be supplied by an Application
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
that uses the facility (other than as an argument passed when the
|
||||||
copyright license to reproduce, prepare Derivative Works of,
|
facility is invoked), then you may convey a copy of the modified
|
||||||
publicly display, publicly perform, sublicense, and distribute the
|
version:
|
||||||
Work and such Derivative Works in Source or Object form.
|
|
||||||
|
|
||||||
3. Grant of Patent License. Subject to the terms and conditions of
|
a) under this License, provided that you make a good faith effort to
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
ensure that, in the event an Application does not supply the
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
function or data, the facility still operates, and performs
|
||||||
(except as stated in this section) patent license to make, have made,
|
whatever part of its purpose remains meaningful, or
|
||||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
||||||
where such license applies only to those patent claims licensable
|
|
||||||
by such Contributor that are necessarily infringed by their
|
|
||||||
Contribution(s) alone or by combination of their Contribution(s)
|
|
||||||
with the Work to which such Contribution(s) was submitted. If You
|
|
||||||
institute patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
||||||
or a Contribution incorporated within the Work constitutes direct
|
|
||||||
or contributory patent infringement, then any patent licenses
|
|
||||||
granted to You under this License for that Work shall terminate
|
|
||||||
as of the date such litigation is filed.
|
|
||||||
|
|
||||||
4. Redistribution. You may reproduce and distribute copies of the
|
b) under the GNU GPL, with none of the additional permissions of
|
||||||
Work or Derivative Works thereof in any medium, with or without
|
this License applicable to that copy.
|
||||||
modifications, and in Source or Object form, provided that You
|
|
||||||
meet the following conditions:
|
|
||||||
|
|
||||||
(a) You must give any other recipients of the Work or
|
3. Object Code Incorporating Material from Library Header Files.
|
||||||
Derivative Works a copy of this License; and
|
|
||||||
|
|
||||||
(b) You must cause any modified files to carry prominent notices
|
The object code form of an Application may incorporate material from
|
||||||
stating that You changed the files; and
|
a header file that is part of the Library. You may convey such object
|
||||||
|
code under terms of your choice, provided that, if the incorporated
|
||||||
|
material is not limited to numerical parameters, data structure
|
||||||
|
layouts and accessors, or small macros, inline functions and templates
|
||||||
|
(ten or fewer lines in length), you do both of the following:
|
||||||
|
|
||||||
(c) You must retain, in the Source form of any Derivative Works
|
a) Give prominent notice with each copy of the object code that the
|
||||||
that You distribute, all copyright, patent, trademark, and
|
Library is used in it and that the Library and its use are
|
||||||
attribution notices from the Source form of the Work,
|
covered by this License.
|
||||||
excluding those notices that do not pertain to any part of
|
|
||||||
the Derivative Works; and
|
|
||||||
|
|
||||||
(d) If the Work includes a "NOTICE" text file as part of its
|
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||||
distribution, then any Derivative Works that You distribute must
|
document.
|
||||||
include a readable copy of the attribution notices contained
|
|
||||||
within such NOTICE file, excluding those notices that do not
|
|
||||||
pertain to any part of the Derivative Works, in at least one
|
|
||||||
of the following places: within a NOTICE text file distributed
|
|
||||||
as part of the Derivative Works; within the Source form or
|
|
||||||
documentation, if provided along with the Derivative Works; or,
|
|
||||||
within a display generated by the Derivative Works, if and
|
|
||||||
wherever such third-party notices normally appear. The contents
|
|
||||||
of the NOTICE file are for informational purposes only and
|
|
||||||
do not modify the License. You may add Your own attribution
|
|
||||||
notices within Derivative Works that You distribute, alongside
|
|
||||||
or as an addendum to the NOTICE text from the Work, provided
|
|
||||||
that such additional attribution notices cannot be construed
|
|
||||||
as modifying the License.
|
|
||||||
|
|
||||||
You may add Your own copyright statement to Your modifications and
|
4. Combined Works.
|
||||||
may provide additional or different license terms and conditions
|
|
||||||
for use, reproduction, or distribution of Your modifications, or
|
|
||||||
for any such Derivative Works as a whole, provided Your use,
|
|
||||||
reproduction, and distribution of the Work otherwise complies with
|
|
||||||
the conditions stated in this License.
|
|
||||||
|
|
||||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
You may convey a Combined Work under terms of your choice that,
|
||||||
any Contribution intentionally submitted for inclusion in the Work
|
taken together, effectively do not restrict modification of the
|
||||||
by You to the Licensor shall be under the terms and conditions of
|
portions of the Library contained in the Combined Work and reverse
|
||||||
this License, without any additional terms or conditions.
|
engineering for debugging such modifications, if you also do each of
|
||||||
Notwithstanding the above, nothing herein shall supersede or modify
|
the following:
|
||||||
the terms of any separate license agreement you may have executed
|
|
||||||
with Licensor regarding such Contributions.
|
|
||||||
|
|
||||||
6. Trademarks. This License does not grant permission to use the trade
|
a) Give prominent notice with each copy of the Combined Work that
|
||||||
names, trademarks, service marks, or product names of the Licensor,
|
the Library is used in it and that the Library and its use are
|
||||||
except as required for reasonable and customary use in describing the
|
covered by this License.
|
||||||
origin of the Work and reproducing the content of the NOTICE file.
|
|
||||||
|
|
||||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||||
agreed to in writing, Licensor provides the Work (and each
|
document.
|
||||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
||||||
implied, including, without limitation, any warranties or conditions
|
|
||||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
||||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
||||||
appropriateness of using or redistributing the Work and assume any
|
|
||||||
risks associated with Your exercise of permissions under this License.
|
|
||||||
|
|
||||||
8. Limitation of Liability. In no event and under no legal theory,
|
c) For a Combined Work that displays copyright notices during
|
||||||
whether in tort (including negligence), contract, or otherwise,
|
execution, include the copyright notice for the Library among
|
||||||
unless required by applicable law (such as deliberate and grossly
|
these notices, as well as a reference directing the user to the
|
||||||
negligent acts) or agreed to in writing, shall any Contributor be
|
copies of the GNU GPL and this license document.
|
||||||
liable to You for damages, including any direct, indirect, special,
|
|
||||||
incidental, or consequential damages of any character arising as a
|
|
||||||
result of this License or out of the use or inability to use the
|
|
||||||
Work (including but not limited to damages for loss of goodwill,
|
|
||||||
work stoppage, computer failure or malfunction, or any and all
|
|
||||||
other commercial damages or losses), even if such Contributor
|
|
||||||
has been advised of the possibility of such damages.
|
|
||||||
|
|
||||||
9. Accepting Warranty or Additional Liability. While redistributing
|
d) Do one of the following:
|
||||||
the Work or Derivative Works thereof, You may choose to offer,
|
|
||||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
||||||
or other liability obligations and/or rights consistent with this
|
|
||||||
License. However, in accepting such obligations, You may act only
|
|
||||||
on Your own behalf and on Your sole responsibility, not on behalf
|
|
||||||
of any other Contributor, and only if You agree to indemnify,
|
|
||||||
defend, and hold each Contributor harmless for any liability
|
|
||||||
incurred by, or claims asserted against, such Contributor by reason
|
|
||||||
of your accepting any such warranty or additional liability.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
0) Convey the Minimal Corresponding Source under the terms of this
|
||||||
|
License, and the Corresponding Application Code in a form
|
||||||
|
suitable for, and under terms that permit, the user to
|
||||||
|
recombine or relink the Application with a modified version of
|
||||||
|
the Linked Version to produce a modified Combined Work, in the
|
||||||
|
manner specified by section 6 of the GNU GPL for conveying
|
||||||
|
Corresponding Source.
|
||||||
|
|
||||||
APPENDIX: How to apply the Apache License to your work.
|
1) Use a suitable shared library mechanism for linking with the
|
||||||
|
Library. A suitable mechanism is one that (a) uses at run time
|
||||||
|
a copy of the Library already present on the user's computer
|
||||||
|
system, and (b) will operate properly with a modified version
|
||||||
|
of the Library that is interface-compatible with the Linked
|
||||||
|
Version.
|
||||||
|
|
||||||
To apply the Apache License to your work, attach the following
|
e) Provide Installation Information, but only if you would otherwise
|
||||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
be required to provide such information under section 6 of the
|
||||||
replaced with your own identifying information. (Don't include
|
GNU GPL, and only to the extent that such information is
|
||||||
the brackets!) The text should be enclosed in the appropriate
|
necessary to install and execute a modified version of the
|
||||||
comment syntax for the file format. We also recommend that a
|
Combined Work produced by recombining or relinking the
|
||||||
file or class name and description of purpose be included on the
|
Application with a modified version of the Linked Version. (If
|
||||||
same "printed page" as the copyright notice for easier
|
you use option 4d0, the Installation Information must accompany
|
||||||
identification within third-party archives.
|
the Minimal Corresponding Source and Corresponding Application
|
||||||
|
Code. If you use option 4d1, you must provide the Installation
|
||||||
|
Information in the manner specified by section 6 of the GNU GPL
|
||||||
|
for conveying Corresponding Source.)
|
||||||
|
|
||||||
Copyright [yyyy] [name of copyright owner]
|
5. Combined Libraries.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
You may place library facilities that are a work based on the
|
||||||
you may not use this file except in compliance with the License.
|
Library side by side in a single library together with other library
|
||||||
You may obtain a copy of the License at
|
facilities that are not Applications and are not covered by this
|
||||||
|
License, and convey such a combined library under terms of your
|
||||||
|
choice, if you do both of the following:
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
a) Accompany the combined library with a copy of the same work based
|
||||||
|
on the Library, uncombined with any other library facilities,
|
||||||
|
conveyed under the terms of this License.
|
||||||
|
|
||||||
|
b) Give prominent notice with the combined library that part of it
|
||||||
|
is a work based on the Library, and explaining where to find the
|
||||||
|
accompanying uncombined form of the same work.
|
||||||
|
|
||||||
|
6. Revised Versions of the GNU Lesser General Public License.
|
||||||
|
|
||||||
|
The Free Software Foundation may publish revised and/or new versions
|
||||||
|
of the GNU Lesser General Public License from time to time. Such new
|
||||||
|
versions will be similar in spirit to the present version, but may
|
||||||
|
differ in detail to address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the
|
||||||
|
Library as you received it specifies that a certain numbered version
|
||||||
|
of the GNU Lesser General Public License "or any later version"
|
||||||
|
applies to it, you have the option of following the terms and
|
||||||
|
conditions either of that published version or of any later version
|
||||||
|
published by the Free Software Foundation. If the Library as you
|
||||||
|
received it does not specify a version number of the GNU Lesser
|
||||||
|
General Public License, you may choose any version of the GNU Lesser
|
||||||
|
General Public License ever published by the Free Software Foundation.
|
||||||
|
|
||||||
|
If the Library as you received it specifies that a proxy can decide
|
||||||
|
whether future versions of the GNU Lesser General Public License shall
|
||||||
|
apply, that proxy's public statement of acceptance of any version is
|
||||||
|
permanent authorization for you to choose that version for the
|
||||||
|
Library.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk.c 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: awk.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/awk.h>
|
#include <qse/awk/awk.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/**
|
/**
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/sed/sed.h>
|
#include <qse/sed/sed.h>
|
||||||
@ -272,7 +274,6 @@ int sed_main (int argc, qse_char_t* argv[])
|
|||||||
qse_fprintf (QSE_STDERR, QSE_T("ERROR: cannot load %s\n"), g_script_file);
|
qse_fprintf (QSE_STDERR, QSE_T("ERROR: cannot load %s\n"), g_script_file);
|
||||||
goto oops;
|
goto oops;
|
||||||
}
|
}
|
||||||
/* TODO: load script from a file */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qse_sed_comp (sed, g_script, qse_strlen(g_script)) == -1)
|
if (qse_sed_comp (sed, g_script, qse_strlen(g_script)) == -1)
|
||||||
|
@ -804,7 +804,7 @@ HTML_ALIGN_MEMBERS = YES
|
|||||||
# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
|
# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
|
||||||
# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
|
# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
|
||||||
|
|
||||||
HTML_DYNAMIC_SECTIONS = NO
|
HTML_DYNAMIC_SECTIONS = YES
|
||||||
|
|
||||||
# If the GENERATE_DOCSET tag is set to YES, additional index files
|
# If the GENERATE_DOCSET tag is set to YES, additional index files
|
||||||
# will be generated that can be used as input for Apple's Xcode 3
|
# will be generated that can be used as input for Apple's Xcode 3
|
||||||
@ -953,6 +953,11 @@ ENUM_VALUES_PER_LINE = 1
|
|||||||
|
|
||||||
GENERATE_TREEVIEW = NONE
|
GENERATE_TREEVIEW = NONE
|
||||||
|
|
||||||
|
# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
|
||||||
|
# and Class Hierarchy pages using a tree view instead of an ordered list.
|
||||||
|
|
||||||
|
USE_INLINE_TREES = YES
|
||||||
|
|
||||||
# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
|
# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
|
||||||
# used to set the initial width (in pixels) of the frame in which the tree
|
# used to set the initial width (in pixels) of the frame in which the tree
|
||||||
# is shown.
|
# is shown.
|
||||||
|
498
qse/doc/doxygen.css
Normal file
498
qse/doc/doxygen.css
Normal file
@ -0,0 +1,498 @@
|
|||||||
|
/* The standard CSS for doxygen */
|
||||||
|
|
||||||
|
body, table, div, p, dl {
|
||||||
|
/* font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
|
||||||
|
font-size: 12px;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @group Heading Levels */
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
text-align: center;
|
||||||
|
font-size: 150%;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 120%;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
dt {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.multicol {
|
||||||
|
-moz-column-gap: 1em;
|
||||||
|
-webkit-column-gap: 1em;
|
||||||
|
-moz-column-count: 3;
|
||||||
|
-webkit-column-count: 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.startli, p.startdd {
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.endli {
|
||||||
|
margin-bottom: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.enddd {
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
caption {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.legend {
|
||||||
|
font-size: 70%;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.qindex, div.navtab{
|
||||||
|
background-color: #e8eef2;
|
||||||
|
border: 1px solid #84b0c7;
|
||||||
|
text-align: center;
|
||||||
|
margin: 2px;
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.qindex, div.navpath {
|
||||||
|
width: 100%;
|
||||||
|
line-height: 140%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.navtab {
|
||||||
|
margin-right: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @group Link Styling */
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #153788;
|
||||||
|
font-weight: normal;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contents a:visited {
|
||||||
|
color: #1b77c5;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.qindex {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.qindexHL {
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: #6666cc;
|
||||||
|
color: #ffffff;
|
||||||
|
border: 1px double #9295C2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.contents a.qindexHL:visited {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.el {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.elRef {
|
||||||
|
}
|
||||||
|
|
||||||
|
a.code {
|
||||||
|
}
|
||||||
|
|
||||||
|
a.codeRef {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
dl.el {
|
||||||
|
margin-left: -1cm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fragment {
|
||||||
|
font-family: monospace, fixed;
|
||||||
|
font-size: 105%;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre.fragment {
|
||||||
|
border: 1px solid #CCCCCC;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
padding: 4px 6px;
|
||||||
|
margin: 4px 8px 4px 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.ah {
|
||||||
|
background-color: black;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #ffffff;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
margin-top: 3px
|
||||||
|
}
|
||||||
|
|
||||||
|
div.groupHeader {
|
||||||
|
margin-left: 16px;
|
||||||
|
margin-top: 12px;
|
||||||
|
margin-bottom: 6px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.groupText {
|
||||||
|
margin-left: 16px;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background: white;
|
||||||
|
color: black;
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.indexkey {
|
||||||
|
background-color: #e8eef2;
|
||||||
|
font-weight: bold;
|
||||||
|
border: 1px solid #CCCCCC;
|
||||||
|
margin: 2px 0px 2px 0;
|
||||||
|
padding: 2px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.indexvalue {
|
||||||
|
background-color: #e8eef2;
|
||||||
|
border: 1px solid #CCCCCC;
|
||||||
|
padding: 2px 10px;
|
||||||
|
margin: 2px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr.memlist {
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.formulaDsp {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.formulaDsp {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
img.formulaInl {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.center {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 0px;
|
||||||
|
margin-bottom: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.center img {
|
||||||
|
border: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.footer {
|
||||||
|
border: 0px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @group Code Colorization */
|
||||||
|
|
||||||
|
span.keyword {
|
||||||
|
color: #008000
|
||||||
|
}
|
||||||
|
|
||||||
|
span.keywordtype {
|
||||||
|
color: #604020
|
||||||
|
}
|
||||||
|
|
||||||
|
span.keywordflow {
|
||||||
|
color: #e08000
|
||||||
|
}
|
||||||
|
|
||||||
|
span.comment {
|
||||||
|
color: #800000
|
||||||
|
}
|
||||||
|
|
||||||
|
span.preprocessor {
|
||||||
|
color: #806020
|
||||||
|
}
|
||||||
|
|
||||||
|
span.stringliteral {
|
||||||
|
color: #002080
|
||||||
|
}
|
||||||
|
|
||||||
|
span.charliteral {
|
||||||
|
color: #008080
|
||||||
|
}
|
||||||
|
|
||||||
|
span.vhdldigit {
|
||||||
|
color: #ff00ff
|
||||||
|
}
|
||||||
|
|
||||||
|
span.vhdlchar {
|
||||||
|
color: #000000
|
||||||
|
}
|
||||||
|
|
||||||
|
span.vhdlkeyword {
|
||||||
|
color: #700070
|
||||||
|
}
|
||||||
|
|
||||||
|
span.vhdllogic {
|
||||||
|
color: #ff0000
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
.search {
|
||||||
|
color: #003399;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
form.search {
|
||||||
|
margin-bottom: 0px;
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input.search {
|
||||||
|
font-size: 75%;
|
||||||
|
color: #000080;
|
||||||
|
font-weight: normal;
|
||||||
|
background-color: #e8eef2;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.tiny {
|
||||||
|
font-size: 75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dirtab {
|
||||||
|
padding: 4px;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border: 1px solid #84b0c7;
|
||||||
|
}
|
||||||
|
|
||||||
|
th.dirtab {
|
||||||
|
background: #e8eef2;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
height: 0;
|
||||||
|
border: none;
|
||||||
|
border-top: 1px solid #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @group Member Descriptions */
|
||||||
|
|
||||||
|
.mdescLeft, .mdescRight,
|
||||||
|
.memItemLeft, .memItemRight,
|
||||||
|
.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
|
||||||
|
background-color: #FAFAFA;
|
||||||
|
border: none;
|
||||||
|
margin: 4px;
|
||||||
|
padding: 1px 0 0 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mdescLeft, .mdescRight {
|
||||||
|
padding: 0px 8px 4px 8px;
|
||||||
|
color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memItemLeft, .memItemRight, .memTemplParams {
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memItemLeft, .memTemplItemLeft {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memTemplParams {
|
||||||
|
color: #606060;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
/* @group Member Details */
|
||||||
|
|
||||||
|
/* Styles for detailed member documentation */
|
||||||
|
|
||||||
|
.memtemplate {
|
||||||
|
font-size: 80%;
|
||||||
|
color: #606060;
|
||||||
|
font-weight: normal;
|
||||||
|
margin-left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memnav {
|
||||||
|
background-color: #e8eef2;
|
||||||
|
border: 1px solid #84b0c7;
|
||||||
|
text-align: center;
|
||||||
|
margin: 2px;
|
||||||
|
margin-right: 15px;
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memitem {
|
||||||
|
padding: 0;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memname {
|
||||||
|
white-space: nowrap;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memproto, .memdoc {
|
||||||
|
border: 1px solid #84b0c7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.memproto {
|
||||||
|
padding: 0;
|
||||||
|
background-color: #d5e1e8;
|
||||||
|
font-weight: bold;
|
||||||
|
-webkit-border-top-left-radius: 8px;
|
||||||
|
-webkit-border-top-right-radius: 8px;
|
||||||
|
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
|
||||||
|
-moz-border-radius-topleft: 8px;
|
||||||
|
-moz-border-radius-topright: 8px;
|
||||||
|
-moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.memdoc {
|
||||||
|
padding: 2px 5px;
|
||||||
|
background-color: #eef3f5;
|
||||||
|
border-top-width: 0;
|
||||||
|
-webkit-border-bottom-left-radius: 8px;
|
||||||
|
-webkit-border-bottom-right-radius: 8px;
|
||||||
|
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
|
||||||
|
-moz-border-radius-bottomleft: 8px;
|
||||||
|
-moz-border-radius-bottomright: 8px;
|
||||||
|
-moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.paramkey {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.paramtype {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.paramname {
|
||||||
|
color: #602020;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.paramname em {
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
/* @group Directory (tree) */
|
||||||
|
|
||||||
|
/* for the tree view */
|
||||||
|
|
||||||
|
.ftvtree {
|
||||||
|
font-family: sans-serif;
|
||||||
|
margin: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* these are for tree view when used as main index */
|
||||||
|
|
||||||
|
.directory {
|
||||||
|
font-size: 9pt;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory h3 {
|
||||||
|
margin: 0px;
|
||||||
|
margin-top: 1em;
|
||||||
|
font-size: 11pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
The following two styles can be used to replace the root node title
|
||||||
|
with an image of your choice. Simply uncomment the next two styles,
|
||||||
|
specify the name of your image and be sure to set 'height' to the
|
||||||
|
proper pixel height of your image.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
.directory h3.swap {
|
||||||
|
height: 61px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url("yourimage.gif");
|
||||||
|
}
|
||||||
|
.directory h3.swap span {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
.directory > h3 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory p {
|
||||||
|
margin: 0px;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory div {
|
||||||
|
display: none;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory img {
|
||||||
|
vertical-align: -30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* these are for tree view when not used as main index */
|
||||||
|
|
||||||
|
.directory-alt {
|
||||||
|
font-size: 100%;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory-alt h3 {
|
||||||
|
margin: 0px;
|
||||||
|
margin-top: 1em;
|
||||||
|
font-size: 11pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory-alt > h3 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory-alt p {
|
||||||
|
margin: 0px;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory-alt div {
|
||||||
|
display: none;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.directory-alt img {
|
||||||
|
vertical-align: -30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* @end */
|
||||||
|
|
||||||
|
address {
|
||||||
|
font-style: normal;
|
||||||
|
color: #333;
|
||||||
|
}
|
@ -15,7 +15,8 @@ Currently the library implements the following utilities:
|
|||||||
|
|
||||||
As the library grows, more utilities will be added.
|
As the library grows, more utilities will be added.
|
||||||
|
|
||||||
The library is licensed under the Apache License, Version 2.0.
|
The library is licensed under the GNU Lesser General Public License version 3:
|
||||||
|
http://www.gnu.org/licenses/
|
||||||
|
|
||||||
The project webpage: http://qse.googlecode.com/
|
The project webpage: http://qse.googlecode.com/
|
||||||
|
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Sed.hpp 127 2009-05-07 13:15:04Z baconevi $
|
* $Id: Sed.hpp 127 2009-05-07 13:15:04Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_MMGR_HPP_
|
#ifndef _QSE_MMGR_HPP_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Sed.hpp 127 2009-05-07 13:15:04Z baconevi $
|
* $Id: Sed.hpp 127 2009-05-07 13:15:04Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_TYPES_HPP_
|
#ifndef _QSE_TYPES_HPP_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Awk.hpp 286 2009-09-14 13:29:55Z hyunghwan.chung $
|
* $Id: Awk.hpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_AWK_AWK_HPP_
|
#ifndef _QSE_AWK_AWK_HPP_
|
||||||
@ -33,9 +35,10 @@
|
|||||||
QSE_BEGIN_NAMESPACE(QSE)
|
QSE_BEGIN_NAMESPACE(QSE)
|
||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Represents the AWK interpreter engine.
|
/// The Awk class implements an AWK interpreter by wrapping around
|
||||||
*/
|
/// #qse_awk_t and #qse_awk_rtx_t.
|
||||||
|
///
|
||||||
class Awk: public Mmgr
|
class Awk: public Mmgr
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -50,8 +53,15 @@ public:
|
|||||||
typedef qse_awk_errstr_t errstr_t;
|
typedef qse_awk_errstr_t errstr_t;
|
||||||
typedef qse_awk_errinf_t errinf_t;
|
typedef qse_awk_errinf_t errinf_t;
|
||||||
|
|
||||||
|
/// The depth_t type redefines #qse_awk_depth_t.
|
||||||
typedef qse_awk_depth_t depth_t;
|
typedef qse_awk_depth_t depth_t;
|
||||||
|
|
||||||
|
/// The option_t type redefines #qse_awk_option_t.
|
||||||
|
typedef qse_awk_option_t option_t;
|
||||||
|
|
||||||
|
/// The gbl_id_t type redefines #qse_awk_gbl_id_t.
|
||||||
|
typedef qse_awk_gbl_id_t gbl_id_t;
|
||||||
|
|
||||||
/** Represents an internal awk value */
|
/** Represents an internal awk value */
|
||||||
typedef qse_awk_val_t val_t;
|
typedef qse_awk_val_t val_t;
|
||||||
|
|
||||||
@ -70,153 +80,30 @@ public:
|
|||||||
class Run;
|
class Run;
|
||||||
friend class Run;
|
friend class Run;
|
||||||
|
|
||||||
/**
|
|
||||||
* @name Error Handling
|
|
||||||
*/
|
|
||||||
/*@{*/
|
|
||||||
|
|
||||||
///
|
|
||||||
/// The ErrorNumber defines error numbers by redefining enumerators
|
|
||||||
/// of the #qse_awk_errnum_t type.
|
|
||||||
///
|
|
||||||
enum ErrorNumber
|
|
||||||
{
|
|
||||||
ERR_NOERR = QSE_AWK_ENOERR,
|
|
||||||
ERR_UNKNOWN = QSE_AWK_EUNKNOWN,
|
|
||||||
ERR_INVAL = QSE_AWK_EINVAL,
|
|
||||||
ERR_NOMEM = QSE_AWK_ENOMEM,
|
|
||||||
ERR_NOSUP = QSE_AWK_ENOSUP,
|
|
||||||
ERR_NOPER = QSE_AWK_ENOPER,
|
|
||||||
ERR_NOENT = QSE_AWK_ENOENT,
|
|
||||||
ERR_EXIST = QSE_AWK_EEXIST,
|
|
||||||
ERR_IOERR = QSE_AWK_EIOERR,
|
|
||||||
ERR_OPEN = QSE_AWK_EOPEN,
|
|
||||||
ERR_READ = QSE_AWK_EREAD,
|
|
||||||
ERR_WRITE = QSE_AWK_EWRITE,
|
|
||||||
ERR_CLOSE = QSE_AWK_ECLOSE,
|
|
||||||
ERR_INTERN = QSE_AWK_EINTERN,
|
|
||||||
ERR_RUNTIME = QSE_AWK_ERUNTIME,
|
|
||||||
ERR_BLKNST = QSE_AWK_EBLKNST,
|
|
||||||
ERR_EXPRNST = QSE_AWK_EEXPRNST,
|
|
||||||
ERR_LXCHR = QSE_AWK_ELXCHR,
|
|
||||||
ERR_LXDIG = QSE_AWK_ELXDIG,
|
|
||||||
ERR_EOF = QSE_AWK_EEOF,
|
|
||||||
ERR_CMTNC = QSE_AWK_ECMTNC,
|
|
||||||
ERR_STRNC = QSE_AWK_ESTRNC,
|
|
||||||
ERR_LBRACE = QSE_AWK_ELBRACE,
|
|
||||||
ERR_LPAREN = QSE_AWK_ELPAREN,
|
|
||||||
ERR_RPAREN = QSE_AWK_ERPAREN,
|
|
||||||
ERR_RBRACK = QSE_AWK_ERBRACK,
|
|
||||||
ERR_COMMA = QSE_AWK_ECOMMA,
|
|
||||||
ERR_SCOLON = QSE_AWK_ESCOLON,
|
|
||||||
ERR_COLON = QSE_AWK_ECOLON,
|
|
||||||
ERR_STMEND = QSE_AWK_ESTMEND,
|
|
||||||
ERR_KWIN = QSE_AWK_EKWIN,
|
|
||||||
ERR_NOTVAR = QSE_AWK_ENOTVAR,
|
|
||||||
ERR_EXPRNR = QSE_AWK_EEXPRNR,
|
|
||||||
ERR_KWFNC = QSE_AWK_EKWFNC,
|
|
||||||
ERR_KWWHL = QSE_AWK_EKWWHL,
|
|
||||||
ERR_ASSIGN = QSE_AWK_EASSIGN,
|
|
||||||
ERR_IDENT = QSE_AWK_EIDENT,
|
|
||||||
ERR_FUNNAME = QSE_AWK_EFUNNAME,
|
|
||||||
ERR_BLKBEG = QSE_AWK_EBLKBEG,
|
|
||||||
ERR_BLKEND = QSE_AWK_EBLKEND,
|
|
||||||
ERR_KWRED = QSE_AWK_EKWRED,
|
|
||||||
ERR_FNCRED = QSE_AWK_EFNCRED,
|
|
||||||
ERR_FUNRED = QSE_AWK_EFUNRED,
|
|
||||||
ERR_GBLRED = QSE_AWK_EGBLRED,
|
|
||||||
ERR_PARRED = QSE_AWK_EPARRED,
|
|
||||||
ERR_VARRED = QSE_AWK_EVARRED,
|
|
||||||
ERR_DUPPAR = QSE_AWK_EDUPPAR,
|
|
||||||
ERR_DUPGBL = QSE_AWK_EDUPGBL,
|
|
||||||
ERR_DUPLCL = QSE_AWK_EDUPLCL,
|
|
||||||
ERR_BADPAR = QSE_AWK_EBADPAR,
|
|
||||||
ERR_BADVAR = QSE_AWK_EBADVAR,
|
|
||||||
ERR_UNDEF = QSE_AWK_EUNDEF,
|
|
||||||
ERR_LVALUE = QSE_AWK_ELVALUE,
|
|
||||||
ERR_GBLTM = QSE_AWK_EGBLTM,
|
|
||||||
ERR_LCLTM = QSE_AWK_ELCLTM,
|
|
||||||
ERR_PARTM = QSE_AWK_EPARTM,
|
|
||||||
ERR_DELETE = QSE_AWK_EDELETE,
|
|
||||||
ERR_BREAK = QSE_AWK_EBREAK,
|
|
||||||
ERR_CONTINUE = QSE_AWK_ECONTINUE,
|
|
||||||
ERR_NEXTBEG = QSE_AWK_ENEXTBEG,
|
|
||||||
ERR_NEXTEND = QSE_AWK_ENEXTEND,
|
|
||||||
ERR_NEXTFBEG = QSE_AWK_ENEXTFBEG,
|
|
||||||
ERR_NEXTFEND = QSE_AWK_ENEXTFEND,
|
|
||||||
ERR_PRINTFARG = QSE_AWK_EPRINTFARG,
|
|
||||||
ERR_PREPST = QSE_AWK_EPREPST,
|
|
||||||
ERR_INCDECOPR = QSE_AWK_EINCDECOPR,
|
|
||||||
ERR_INCLSTR = QSE_AWK_EINCLSTR,
|
|
||||||
ERR_INCLTD = QSE_AWK_EINCLTD,
|
|
||||||
ERR_DIRECNR = QSE_AWK_EDIRECNR,
|
|
||||||
ERR_DIVBY0 = QSE_AWK_EDIVBY0,
|
|
||||||
ERR_OPERAND = QSE_AWK_EOPERAND,
|
|
||||||
ERR_POSIDX = QSE_AWK_EPOSIDX,
|
|
||||||
ERR_ARGTF = QSE_AWK_EARGTF,
|
|
||||||
ERR_ARGTM = QSE_AWK_EARGTM,
|
|
||||||
ERR_FUNNF = QSE_AWK_EFUNNF,
|
|
||||||
ERR_NOTIDX = QSE_AWK_ENOTIDX,
|
|
||||||
ERR_NOTDEL = QSE_AWK_ENOTDEL,
|
|
||||||
ERR_NOTMAP = QSE_AWK_ENOTMAP,
|
|
||||||
ERR_NOTMAPIN = QSE_AWK_ENOTMAPIN,
|
|
||||||
ERR_NOTMAPNILIN = QSE_AWK_ENOTMAPNILIN,
|
|
||||||
ERR_NOTREF = QSE_AWK_ENOTREF,
|
|
||||||
ERR_NOTASS = QSE_AWK_ENOTASS,
|
|
||||||
ERR_IDXVALASSMAP = QSE_AWK_EIDXVALASSMAP,
|
|
||||||
ERR_POSVALASSMAP = QSE_AWK_EPOSVALASSMAP,
|
|
||||||
ERR_MAPTOSCALAR = QSE_AWK_EMAPTOSCALAR,
|
|
||||||
ERR_SCALARTOMAP = QSE_AWK_ESCALARTOMAP,
|
|
||||||
ERR_MAPNA = QSE_AWK_EMAPNA,
|
|
||||||
ERR_VALTYPE = QSE_AWK_EVALTYPE,
|
|
||||||
ERR_RDELETE = QSE_AWK_ERDELETE,
|
|
||||||
ERR_RRESET = QSE_AWK_ERRESET,
|
|
||||||
ERR_RNEXTBEG = QSE_AWK_ERNEXTBEG,
|
|
||||||
ERR_RNEXTEND = QSE_AWK_ERNEXTEND,
|
|
||||||
ERR_RNEXTFBEG = QSE_AWK_ERNEXTFBEG,
|
|
||||||
ERR_RNEXTFEND = QSE_AWK_ERNEXTFEND,
|
|
||||||
ERR_FNCIMPL = QSE_AWK_EFNCIMPL,
|
|
||||||
ERR_IOUSER = QSE_AWK_EIOUSER,
|
|
||||||
ERR_IOIMPL = QSE_AWK_EIOIMPL,
|
|
||||||
ERR_IONMNF = QSE_AWK_EIONMNF,
|
|
||||||
ERR_IONMEM = QSE_AWK_EIONMEM,
|
|
||||||
ERR_IONMNL = QSE_AWK_EIONMNL,
|
|
||||||
ERR_FMTARG = QSE_AWK_EFMTARG,
|
|
||||||
ERR_FMTCNV = QSE_AWK_EFMTCNV,
|
|
||||||
ERR_CONVFMTCHR = QSE_AWK_ECONVFMTCHR,
|
|
||||||
ERR_OFMTCHR = QSE_AWK_EOFMTCHR,
|
|
||||||
ERR_REXRECUR = QSE_AWK_EREXRECUR,
|
|
||||||
ERR_REXRPAREN = QSE_AWK_EREXRPAREN,
|
|
||||||
ERR_REXRBRACKET = QSE_AWK_EREXRBRACKET,
|
|
||||||
ERR_REXRBRACE = QSE_AWK_EREXRBRACE,
|
|
||||||
ERR_REXUNBALPAREN = QSE_AWK_EREXUNBALPAREN,
|
|
||||||
ERR_REXINVALBRACE = QSE_AWK_EREXINVALBRACE,
|
|
||||||
ERR_REXCOLON = QSE_AWK_EREXCOLON,
|
|
||||||
ERR_REXCRANGE = QSE_AWK_EREXCRANGE,
|
|
||||||
ERR_REXCCLASS = QSE_AWK_EREXCCLASS,
|
|
||||||
ERR_REXBRANGE = QSE_AWK_EREXBRANGE,
|
|
||||||
ERR_REXEND = QSE_AWK_EREXEND,
|
|
||||||
ERR_REXGARBAGE = QSE_AWK_EREXGARBAGE,
|
|
||||||
};
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
///
|
||||||
|
/// @name Error Handling
|
||||||
|
///
|
||||||
|
/// @{
|
||||||
|
|
||||||
///
|
///
|
||||||
/// The getErrorString() function returns a formatting string
|
/// The getErrorString() function returns a formatting string
|
||||||
/// for an error code @a num. You can override this function
|
/// for an error code @a num. You can override this function
|
||||||
/// to customize an error message. You must include the same numbers
|
/// to customize an error message. You must include the same numbers
|
||||||
/// of ${X}'s as the orginal formatting string. Their order may be
|
/// of ${X}'s as the orginal formatting string. Their order may be
|
||||||
/// different. The example below changes the formatting string for
|
/// different. The example below changes the formatting string for
|
||||||
/// ERR_NOENT.
|
/// #QSE_AWK_ENOENT.
|
||||||
/// @code
|
/// @code
|
||||||
/// const MyAwk::char_t* MyAwk::getErrorString (ErrorNumber num) const
|
/// const MyAwk::char_t* MyAwk::getErrorString (errnum_t num) const
|
||||||
/// {
|
/// {
|
||||||
/// if (num == ERR_NOENT) return QSE_T("cannot find '${0}'");
|
/// if (num == QSE_AWK_ENOENT) return QSE_T("cannot find '${0}'");
|
||||||
/// return Awk::getErrorString (num);
|
/// return Awk::getErrorString (num);
|
||||||
/// }
|
/// }
|
||||||
/// @endcode
|
/// @endcode
|
||||||
///
|
///
|
||||||
virtual const char_t* getErrorString (
|
virtual const char_t* getErrorString (
|
||||||
ErrorNumber num
|
errnum_t num
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@ -224,7 +111,7 @@ public:
|
|||||||
/// The getErrorNumber() function returns the number of the last
|
/// The getErrorNumber() function returns the number of the last
|
||||||
/// error occurred.
|
/// error occurred.
|
||||||
///
|
///
|
||||||
ErrorNumber getErrorNumber () const;
|
errnum_t getErrorNumber () const;
|
||||||
|
|
||||||
///
|
///
|
||||||
/// The getErrorLocation() function returns the location of the
|
/// The getErrorLocation() function returns the location of the
|
||||||
@ -242,7 +129,7 @@ public:
|
|||||||
/// The setError() function sets error information.
|
/// The setError() function sets error information.
|
||||||
///
|
///
|
||||||
void setError (
|
void setError (
|
||||||
ErrorNumber code, ///< error code
|
errnum_t code, ///< error code
|
||||||
const cstr_t* args = QSE_NULL, ///< message formatting
|
const cstr_t* args = QSE_NULL, ///< message formatting
|
||||||
/// argument array
|
/// argument array
|
||||||
const loc_t* loc = QSE_NULL ///< error location
|
const loc_t* loc = QSE_NULL ///< error location
|
||||||
@ -253,7 +140,7 @@ public:
|
|||||||
/// with a customized error message.
|
/// with a customized error message.
|
||||||
///
|
///
|
||||||
void setErrorWithMessage (
|
void setErrorWithMessage (
|
||||||
ErrorNumber code, ///< error code
|
errnum_t code, ///< error code
|
||||||
const char_t* msg, ///< error message
|
const char_t* msg, ///< error message
|
||||||
const loc_t* loc ///< error location
|
const loc_t* loc ///< error location
|
||||||
);
|
);
|
||||||
@ -266,7 +153,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
void retrieveError ();
|
void retrieveError ();
|
||||||
void retrieveError (Run* run);
|
void retrieveError (Run* run);
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
class NoSource;
|
class NoSource;
|
||||||
@ -370,11 +257,11 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
///
|
||||||
* The RIOBase class is a base class to represent runtime I/O context.
|
/// The RIOBase class is a base class to represent runtime I/O
|
||||||
* The Console, File, Pipe classes inherit this class to implement
|
/// operations. The Console, File, Pipe classes implement more specific
|
||||||
* an actual I/O context.
|
/// I/O operations by inheriting this class.
|
||||||
*/
|
///
|
||||||
class RIOBase
|
class RIOBase
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
@ -400,10 +287,10 @@ public:
|
|||||||
RIOBase& operator= (const RIOBase&);
|
RIOBase& operator= (const RIOBase&);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The Pipe class encapsulates the pipe operations indicated by
|
/// The Pipe class encapsulates the pipe operations indicated by
|
||||||
* the | and || operators.
|
/// the | and || operators.
|
||||||
*/
|
///
|
||||||
class Pipe: public RIOBase
|
class Pipe: public RIOBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -449,9 +336,9 @@ public:
|
|||||||
CloseMode getCloseMode () const;
|
CloseMode getCloseMode () const;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* File
|
/// The File class encapsulates file operations by inheriting RIOBase.
|
||||||
*/
|
///
|
||||||
class File: public RIOBase
|
class File: public RIOBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -471,9 +358,10 @@ public:
|
|||||||
Mode getMode () const;
|
Mode getMode () const;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Console
|
/// The Console class encapsulates the console operations by
|
||||||
*/
|
/// inheriting RIOBase.
|
||||||
|
///
|
||||||
class Console: public RIOBase
|
class Console: public RIOBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -498,9 +386,10 @@ public:
|
|||||||
char_t* filename;
|
char_t* filename;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Represents a value.
|
/// The Value class wraps around #qse_awk_val_t to provide a more
|
||||||
*/
|
/// comprehensive interface.
|
||||||
|
///
|
||||||
class Value
|
class Value
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -520,15 +409,18 @@ public:
|
|||||||
void operator delete (void* p);
|
void operator delete (void* p);
|
||||||
void operator delete[] (void* p);
|
void operator delete[] (void* p);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Represents an index of an arrayed value
|
/// The Index class encapsulates an index of an arrayed value.
|
||||||
*/
|
///
|
||||||
class Index
|
class Index
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
friend class Value;
|
friend class Value;
|
||||||
|
|
||||||
|
/// The Index() function creates an empty array index.
|
||||||
Index (): ptr (EMPTY_STRING), len (0) {}
|
Index (): ptr (EMPTY_STRING), len (0) {}
|
||||||
|
|
||||||
|
/// The Index() function creates a string array index.
|
||||||
Index (const char_t* ptr, size_t len):
|
Index (const char_t* ptr, size_t len):
|
||||||
ptr (ptr), len (len) {}
|
ptr (ptr), len (len) {}
|
||||||
|
|
||||||
@ -536,9 +428,9 @@ public:
|
|||||||
size_t len;
|
size_t len;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Represents a numeric index of an arrayed value
|
/// Represents a numeric index of an arrayed value
|
||||||
*/
|
///
|
||||||
class IntIndex: public Index
|
class IntIndex: public Index
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -563,20 +455,32 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* helper class to iterate over array elements
|
/// The IndexIterator class is a helper class to make simple
|
||||||
*/
|
/// iteration over array elements.
|
||||||
|
///
|
||||||
class IndexIterator
|
class IndexIterator
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
friend class Value;
|
friend class Value;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The END variable is a special variable to
|
||||||
|
/// represent the end of iteration.
|
||||||
|
///
|
||||||
static IndexIterator END;
|
static IndexIterator END;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The IndexIterator() function creates an iterator
|
||||||
|
/// for an arrayed value.
|
||||||
|
///
|
||||||
IndexIterator (): pair (QSE_NULL), buckno (0) {}
|
IndexIterator (): pair (QSE_NULL), buckno (0) {}
|
||||||
|
|
||||||
|
protected:
|
||||||
IndexIterator (pair_t* pair, size_t buckno):
|
IndexIterator (pair_t* pair, size_t buckno):
|
||||||
pair (pair), buckno (buckno) {}
|
pair (pair), buckno (buckno) {}
|
||||||
|
|
||||||
|
public:
|
||||||
bool operator== (const IndexIterator& ii) const
|
bool operator== (const IndexIterator& ii) const
|
||||||
{
|
{
|
||||||
return pair == ii.pair && buckno == ii.buckno;
|
return pair == ii.pair && buckno == ii.buckno;
|
||||||
@ -592,8 +496,24 @@ public:
|
|||||||
size_t buckno;
|
size_t buckno;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The Value() function creates an empty value associated
|
||||||
|
/// with no runtime context. To set an actual inner value,
|
||||||
|
/// you must specify a context when calling setXXX() functions.
|
||||||
|
/// i.e., use setInt(run,10) instead of setInt(10).
|
||||||
|
///
|
||||||
Value ();
|
Value ();
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The Value() function creates an empty value associated
|
||||||
|
/// with a runtime context.
|
||||||
|
///
|
||||||
Value (Run& run);
|
Value (Run& run);
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The Value() function creates an empty value associated
|
||||||
|
/// with a runtime context.
|
||||||
|
///
|
||||||
Value (Run* run);
|
Value (Run* run);
|
||||||
|
|
||||||
Value (const Value& v);
|
Value (const Value& v);
|
||||||
@ -710,21 +630,42 @@ public:
|
|||||||
const char_t* str
|
const char_t* str
|
||||||
);
|
);
|
||||||
|
|
||||||
/** determines if a value is arrayed */
|
///
|
||||||
|
/// The isIndexed() function determines if a value is arrayed.
|
||||||
|
/// @return true if indexed, false if not.
|
||||||
|
///
|
||||||
bool isIndexed () const;
|
bool isIndexed () const;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The getIndexed() function gets a value at the given
|
||||||
|
/// index @a idx and sets it to @a val.
|
||||||
|
/// @return 0 on success, -1 on failure
|
||||||
|
///
|
||||||
int getIndexed (
|
int getIndexed (
|
||||||
const Index& idx,
|
const Index& idx, ///< array index
|
||||||
Value* val
|
Value* val ///< value holder
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The getFirstIndex() function stores the first index of
|
||||||
|
/// an arrayed value into @a idx.
|
||||||
|
/// @return IndexIterator::END if the arrayed value is empty,
|
||||||
|
/// iterator that can be passed to getNextIndex() if not
|
||||||
|
///
|
||||||
IndexIterator getFirstIndex (
|
IndexIterator getFirstIndex (
|
||||||
Index* idx
|
Index* idx ///< index holder
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// The getNextIndex() function stores into @a idx the next
|
||||||
|
/// index of an array value from the position indicated by
|
||||||
|
/// @a iter.
|
||||||
|
/// @return IndexIterator::END if the arrayed value is empty,
|
||||||
|
/// iterator that can be passed to getNextIndex() if not
|
||||||
|
///
|
||||||
IndexIterator getNextIndex (
|
IndexIterator getNextIndex (
|
||||||
Index* idx,
|
Index* idx, ///< index holder
|
||||||
const IndexIterator& iter
|
const IndexIterator& iter ///< current position
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@ -740,32 +681,10 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
///
|
||||||
* Defines an identifier of predefined global variables.
|
/// The Run class wraps around #qse_awk_rtx_t to represent the
|
||||||
* Awk::setGlobal and Awk::getGlobal can take one of these enumerators.
|
/// runtime context.
|
||||||
*/
|
///
|
||||||
enum Global
|
|
||||||
{
|
|
||||||
GBL_ARGC = QSE_AWK_GBL_ARGC, /**< ARGC */
|
|
||||||
GBL_ARGV = QSE_AWK_GBL_ARGV, /**< ARGV */
|
|
||||||
GBL_CONVFMT = QSE_AWK_GBL_CONVFMT, /**< CONVFMT */
|
|
||||||
GBL_FILENAME = QSE_AWK_GBL_FILENAME, /**< FILENAME */
|
|
||||||
GBL_FNR = QSE_AWK_GBL_FNR, /**< FNR */
|
|
||||||
GBL_FS = QSE_AWK_GBL_FS, /**< FS */
|
|
||||||
GBL_IGNORECASE = QSE_AWK_GBL_IGNORECASE, /**< IGNORECASE */
|
|
||||||
GBL_NF = QSE_AWK_GBL_NF, /**< NF */
|
|
||||||
GBL_NR = QSE_AWK_GBL_NR, /**< NR */
|
|
||||||
GBL_OFILENAME = QSE_AWK_GBL_OFILENAME, /**< OFILENAME */
|
|
||||||
GBL_OFMT = QSE_AWK_GBL_OFMT, /**< OFMT */
|
|
||||||
GBL_OFS = QSE_AWK_GBL_OFS, /**< OFS */
|
|
||||||
GBL_ORS = QSE_AWK_GBL_ORS, /**< ORS */
|
|
||||||
GBL_RLENGTH = QSE_AWK_GBL_RLENGTH, /**< RLENGTH */
|
|
||||||
GBL_RS = QSE_AWK_GBL_RS, /**< RS */
|
|
||||||
GBL_RSTART = QSE_AWK_GBL_RSTART, /**< RSTART */
|
|
||||||
GBL_SUBSEP = QSE_AWK_GBL_SUBSEP /**< SUBSEP */
|
|
||||||
};
|
|
||||||
|
|
||||||
/** Represents the execution context */
|
|
||||||
class Run
|
class Run
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
@ -783,20 +702,20 @@ public:
|
|||||||
operator rtx_t* () const;
|
operator rtx_t* () const;
|
||||||
|
|
||||||
void stop () const;
|
void stop () const;
|
||||||
bool shouldStop () const;
|
bool isStopReq () const;
|
||||||
|
|
||||||
ErrorNumber getErrorNumber () const;
|
errnum_t getErrorNumber () const;
|
||||||
loc_t getErrorLocation () const;
|
loc_t getErrorLocation () const;
|
||||||
const char_t* getErrorMessage () const;
|
const char_t* getErrorMessage () const;
|
||||||
|
|
||||||
void setError (
|
void setError (
|
||||||
ErrorNumber code,
|
errnum_t code,
|
||||||
const cstr_t* args = QSE_NULL,
|
const cstr_t* args = QSE_NULL,
|
||||||
const loc_t* loc = QSE_NULL
|
const loc_t* loc = QSE_NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
void setErrorWithMessage (
|
void setErrorWithMessage (
|
||||||
ErrorNumber code,
|
errnum_t code,
|
||||||
const char_t* msg,
|
const char_t* msg,
|
||||||
const loc_t* loc
|
const loc_t* loc
|
||||||
);
|
);
|
||||||
@ -841,50 +760,56 @@ public:
|
|||||||
rtx_t* rtx;
|
rtx_t* rtx;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Returns the primitive handle */
|
///
|
||||||
|
/// Returns the primitive handle
|
||||||
|
///
|
||||||
operator awk_t* () const;
|
operator awk_t* () const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* @name Basic Functions
|
/// @name Basic Functions
|
||||||
*/
|
/// @{
|
||||||
/*@{*/
|
///
|
||||||
/** Constructor */
|
|
||||||
|
/// Constructor
|
||||||
Awk ();
|
Awk ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The Awk::open() function initializes an interpreter.
|
/// The open() function initializes an interpreter.
|
||||||
* You must call this function before doing anything meaningful.
|
/// You must call this function before doing anything meaningful.
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int open ();
|
int open ();
|
||||||
|
|
||||||
/** Closes the interpreter. */
|
///
|
||||||
|
/// The cloase() function closes the interpreter.
|
||||||
|
///
|
||||||
void close ();
|
void close ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The Awk::parse() function parses the source code read from the input
|
/// The parse() function parses the source code read from the input
|
||||||
* stream @a in and writes the parse tree to the output stream @a out.
|
/// stream @a in and writes the parse tree to the output stream @a out.
|
||||||
* To disable deparsing, you may set @a out to Awk::Source::NONE.
|
/// To disable deparsing, you may set @a out to Awk::Source::NONE.
|
||||||
* However, it is not allowed to specify Awk::Source::NONE for @a in.
|
/// However, it is not allowed to specify Awk::Source::NONE for @a in.
|
||||||
*
|
///
|
||||||
* @return Run object on success, #QSE_NULL on failure
|
/// @return Run object on success, #QSE_NULL on failure
|
||||||
*/
|
///
|
||||||
Awk::Run* parse (
|
Awk::Run* parse (
|
||||||
Source& in, ///< script to parse
|
Source& in, ///< script to parse
|
||||||
Source& out ///< deparsing target
|
Source& out ///< deparsing target
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Executes the BEGIN block, pattern-action blocks, and the END block.
|
/// The loop() function executes the BEGIN block, pattern-action blocks,
|
||||||
* @return 0 on succes, -1 on failure
|
/// and the END block. The return value is stored into @a ret.
|
||||||
*/
|
/// @return 0 on succes, -1 on failure
|
||||||
|
///
|
||||||
int loop (
|
int loop (
|
||||||
Value* ret ///< return value holder
|
Value* ret ///< return value holder
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Calls a function
|
/// The call() function invokes a function named @a name.
|
||||||
*/
|
///
|
||||||
int call (
|
int call (
|
||||||
const char_t* name, ///< function name
|
const char_t* name, ///< function name
|
||||||
Value* ret, ///< return value holder
|
Value* ret, ///< return value holder
|
||||||
@ -892,149 +817,110 @@ public:
|
|||||||
size_t nargs ///< number of arguments
|
size_t nargs ///< number of arguments
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Makes request to abort execution
|
/// The stop() function makes request to abort execution
|
||||||
*/
|
///
|
||||||
void stop ();
|
void stop ();
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* @name Configuration
|
/// @name Configuration
|
||||||
*/
|
/// @{
|
||||||
/*@{*/
|
///
|
||||||
|
|
||||||
/** Defines options */
|
///
|
||||||
enum Option
|
/// The getOption() function gets the current options.
|
||||||
{
|
/// @return 0 or current options ORed of #option_t enumerators.
|
||||||
OPT_IMPLICIT = QSE_AWK_IMPLICIT,
|
///
|
||||||
OPT_EXPLICIT = QSE_AWK_EXPLICIT,
|
|
||||||
OPT_EXTRAOPS = QSE_AWK_EXTRAOPS,
|
|
||||||
OPT_RIO = QSE_AWK_RIO,
|
|
||||||
OPT_RWPIPE = QSE_AWK_RWPIPE,
|
|
||||||
|
|
||||||
/** Can terminate a statement with a new line */
|
|
||||||
OPT_NEWLINE = QSE_AWK_NEWLINE,
|
|
||||||
|
|
||||||
OPT_STRIPRECSPC = QSE_AWK_STRIPRECSPC,
|
|
||||||
OPT_STRIPSTRSPC = QSE_AWK_STRIPSTRSPC,
|
|
||||||
|
|
||||||
/** Support the nextofile statement */
|
|
||||||
OPT_NEXTOFILE = QSE_AWK_NEXTOFILE,
|
|
||||||
/** Enables the keyword 'reset' */
|
|
||||||
OPT_RESET = QSE_AWK_RESET,
|
|
||||||
/** Use CR+LF instead of LF for line breaking. */
|
|
||||||
OPT_CRLF = QSE_AWK_CRLF,
|
|
||||||
/** Allows the assignment of a map value to a variable */
|
|
||||||
OPT_MAPTOVAR = QSE_AWK_MAPTOVAR,
|
|
||||||
/** Allows BEGIN, END, pattern-action blocks */
|
|
||||||
OPT_PABLOCK = QSE_AWK_PABLOCK,
|
|
||||||
/** Allows {n,m} in a regular expression */
|
|
||||||
OPT_REXBOUND = QSE_AWK_REXBOUND,
|
|
||||||
/**
|
|
||||||
* Performs numeric comparison when a string convertable
|
|
||||||
* to a number is compared with a number or vice versa.
|
|
||||||
*
|
|
||||||
* For an expression (9 > "10.9"),
|
|
||||||
* - 9 is greater if #QSE_AWK_NCMPONSTR is off;
|
|
||||||
* - "10.9" is greater if #QSE_AWK_NCMPONSTR is on
|
|
||||||
*/
|
|
||||||
OPT_NCMPONSTR = QSE_AWK_NCMPONSTR,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enables the strict naming rule.
|
|
||||||
* - a parameter name can not be the same as the owning
|
|
||||||
* function name.
|
|
||||||
* - a local variable name can not be the same as the
|
|
||||||
* owning function name.
|
|
||||||
*/
|
|
||||||
|
|
||||||
OPT_STRICTNAMING = QSE_AWK_STRICTNAMING,
|
|
||||||
|
|
||||||
/** Enables 'include' */
|
|
||||||
OPT_INCLUDE = QSE_AWK_INCLUDE
|
|
||||||
};
|
|
||||||
/** Gets the option */
|
|
||||||
int getOption () const;
|
int getOption () const;
|
||||||
|
|
||||||
/** Sets the option */
|
///
|
||||||
|
/// The setOption() function changes the current options.
|
||||||
|
///
|
||||||
void setOption (
|
void setOption (
|
||||||
int opt
|
int opt ///< options ORed of #option_t enumerators.
|
||||||
);
|
);
|
||||||
|
|
||||||
/** Defines the depth ID */
|
///
|
||||||
enum Depth
|
/// The setMaxDepth() function sets the maximum processing depth
|
||||||
{
|
/// for operations identified by @a ids.
|
||||||
DEPTH_BLOCK_PARSE = QSE_AWK_DEPTH_BLOCK_PARSE,
|
///
|
||||||
DEPTH_BLOCK_RUN = QSE_AWK_DEPTH_BLOCK_RUN,
|
void setMaxDepth (
|
||||||
DEPTH_EXPR_PARSE = QSE_AWK_DEPTH_EXPR_PARSE,
|
int ids, ///< number ORed of #depth_t enumerators
|
||||||
DEPTH_EXPR_RUN = QSE_AWK_DEPTH_EXPR_RUN,
|
size_t depth ///< new depth
|
||||||
DEPTH_REX_BUILD = QSE_AWK_DEPTH_REX_BUILD,
|
);
|
||||||
DEPTH_REX_MATCH = QSE_AWK_DEPTH_REX_MATCH
|
|
||||||
};
|
|
||||||
|
|
||||||
/** Sets the maximum depth */
|
///
|
||||||
void setMaxDepth (int ids, size_t depth);
|
/// The getMaxDepth() function gets the maximum depth for an operation
|
||||||
/** Gets the maximum depth */
|
/// type identified by @a id.
|
||||||
size_t getMaxDepth (depth_t id) const;
|
///
|
||||||
|
size_t getMaxDepth (
|
||||||
|
depth_t id ///< operation identifier
|
||||||
|
) const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Adds an ARGV string as long as @a len characters pointed to
|
/// The addArgument() function adds an ARGV string as long as @a len
|
||||||
* by @a arg. loop() and call() make a string added available
|
/// characters pointed to
|
||||||
* to a script through ARGV.
|
/// by @a arg. loop() and call() make a string added available
|
||||||
* @return 0 on success, -1 on failure
|
/// to a script through ARGV.
|
||||||
*/
|
/// @return 0 on success, -1 on failure
|
||||||
|
///
|
||||||
int addArgument (
|
int addArgument (
|
||||||
const char_t* arg,
|
const char_t* arg, ///< string pointer
|
||||||
size_t len
|
size_t len ///< string length
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Adds a null-terminated string @a arg. loop() and call()
|
/// The addArgument() function adds a null-terminated string @a arg.
|
||||||
* make a string added available to a script through ARGV.
|
/// loop() and call() make a string added available to a script
|
||||||
* @return 0 on success, -1 on failure
|
/// through ARGV.
|
||||||
*/
|
/// @return 0 on success, -1 on failure
|
||||||
int addArgument (const char_t* arg);
|
///
|
||||||
|
int addArgument (
|
||||||
|
const char_t* arg ///< string pointer
|
||||||
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Deletes all ARGV strings.
|
/// The clearArguments() function deletes all ARGV strings.
|
||||||
*/
|
///
|
||||||
void clearArguments ();
|
void clearArguments ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Registers an intrinsic global variable.
|
/// The addGlobal() function registers an intrinsic global variable.
|
||||||
* @return integer >= 0 on success, -1 on failure.
|
/// @return integer >= 0 on success, -1 on failure.
|
||||||
*/
|
///
|
||||||
int addGlobal (
|
int addGlobal (
|
||||||
const char_t* name ///< variable name
|
const char_t* name ///< variable name
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Unregisters an intrinsic global variable.
|
/// The deleteGlobal() function unregisters an intrinsic global
|
||||||
* @return 0 on success, -1 on failure.
|
/// variable by name.
|
||||||
*/
|
/// @return 0 on success, -1 on failure.
|
||||||
|
///
|
||||||
int deleteGlobal (
|
int deleteGlobal (
|
||||||
const char_t* name ///< variable name
|
const char_t* name ///< variable name
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Sets the value of a global variable identified by @a id.
|
/// The setGlobal() function sets the value of a global variable
|
||||||
* The @a id is either a value returned by Awk::addGlobal or one of
|
/// identified by @a id. The @a id is either a value returned by
|
||||||
* Awk::Global enumerators. It is not allowed to call this function
|
/// addGlobal() or one of the #gbl_id_t enumerators. It is not allowed
|
||||||
* prior to Awk::parse.
|
/// to call this function prior to parse().
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int setGlobal (
|
int setGlobal (
|
||||||
int id, ///< numeric identifier
|
int id, ///< numeric identifier
|
||||||
const Value& v ///< value
|
const Value& v ///< value
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Gets the value of a global riable identified by @a id.
|
/// The getGlobal() function gets the value of a global variable
|
||||||
* The @a id is either a value returned by Awk::addGlobal or one of
|
/// identified by @a id. The @a id is either a value returned by
|
||||||
* Awk::::Global enumerators. It is not allowed to call this function
|
/// addGlobal() or one of the #gbl_id_t enumerators. It is not allowed
|
||||||
* prior to Awk::parse.
|
/// to call this function before Awk::parse().
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int getGlobal (
|
int getGlobal (
|
||||||
int id, ///< numeric identifier
|
int id, ///< numeric identifier
|
||||||
Value& v ///< value store
|
Value& v ///< value store
|
||||||
@ -1051,23 +937,30 @@ public:
|
|||||||
const cstr_t* name
|
const cstr_t* name
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Adds a new user-defined intrinsic function.
|
/// The addFunction() function adds a new user-defined intrinsic
|
||||||
*/
|
/// function.
|
||||||
|
///
|
||||||
int addFunction (
|
int addFunction (
|
||||||
const char_t* name, size_t minArgs, size_t maxArgs,
|
const char_t* name, ///< function name
|
||||||
FunctionHandler handler);
|
size_t minArgs, ///< minimum numbers of arguments
|
||||||
|
size_t maxArgs, ///< maximum numbers of arguments
|
||||||
|
FunctionHandler handler ///< function handler
|
||||||
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Deletes a user-defined intrinsic function
|
/// The deleteFunction() function deletes a user-defined intrinsic
|
||||||
*/
|
/// function by name.
|
||||||
int deleteFunction (const char_t* name);
|
///
|
||||||
/*@}*/
|
int deleteFunction (
|
||||||
|
const char_t* name ///< function name
|
||||||
|
);
|
||||||
|
/// @}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* @name Word Substitution
|
/// @name Word Substitution
|
||||||
*/
|
/// @{
|
||||||
/*@{*/
|
///
|
||||||
int getWord (
|
int getWord (
|
||||||
const cstr_t* ow,
|
const cstr_t* ow,
|
||||||
cstr_t* nw
|
cstr_t* nw
|
||||||
@ -1083,14 +976,13 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
void unsetAllWords ();
|
void unsetAllWords ();
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/**
|
///
|
||||||
* @name Pipe I/O handlers
|
/// @name Pipe I/O handlers
|
||||||
* Pipe operations are achieved through the following functions.
|
/// Pipe operations are achieved through the following functions.
|
||||||
*/
|
/// @{
|
||||||
/*@{*/
|
|
||||||
|
|
||||||
/// The openPipe() function is a pure virtual function that must be
|
/// The openPipe() function is a pure virtual function that must be
|
||||||
/// overridden by a child class to open a pipe. It must return 1
|
/// overridden by a child class to open a pipe. It must return 1
|
||||||
@ -1105,31 +997,32 @@ protected:
|
|||||||
virtual ssize_t readPipe (Pipe& io, char_t* buf, size_t len) = 0;
|
virtual ssize_t readPipe (Pipe& io, char_t* buf, size_t len) = 0;
|
||||||
virtual ssize_t writePipe (Pipe& io, const char_t* buf, size_t len) = 0;
|
virtual ssize_t writePipe (Pipe& io, const char_t* buf, size_t len) = 0;
|
||||||
virtual int flushPipe (Pipe& io) = 0;
|
virtual int flushPipe (Pipe& io) = 0;
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* @name File I/O handlers
|
/// @name File I/O handlers
|
||||||
* File operations are achieved through the following functions.
|
/// File operations are achieved through the following functions.
|
||||||
*/
|
/// @{
|
||||||
/*@{*/
|
///
|
||||||
virtual int openFile (File& io) = 0;
|
virtual int openFile (File& io) = 0;
|
||||||
virtual int closeFile (File& io) = 0;
|
virtual int closeFile (File& io) = 0;
|
||||||
virtual ssize_t readFile (File& io, char_t* buf, size_t len) = 0;
|
virtual ssize_t readFile (File& io, char_t* buf, size_t len) = 0;
|
||||||
virtual ssize_t writeFile (File& io, const char_t* buf, size_t len) = 0;
|
virtual ssize_t writeFile (File& io, const char_t* buf, size_t len) = 0;
|
||||||
virtual int flushFile (File& io) = 0;
|
virtual int flushFile (File& io) = 0;
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* @name Console I/O handlers
|
/// @name Console I/O handlers
|
||||||
* Console operations are achieved through the following functions.
|
/// Console operations are achieved through the following functions.
|
||||||
*/
|
/// @{
|
||||||
|
///
|
||||||
virtual int openConsole (Console& io) = 0;
|
virtual int openConsole (Console& io) = 0;
|
||||||
virtual int closeConsole (Console& io) = 0;
|
virtual int closeConsole (Console& io) = 0;
|
||||||
virtual ssize_t readConsole (Console& io, char_t* buf, size_t len) = 0;
|
virtual ssize_t readConsole (Console& io, char_t* buf, size_t len) = 0;
|
||||||
virtual ssize_t writeConsole (Console& io, const char_t* buf, size_t len) = 0;
|
virtual ssize_t writeConsole (Console& io, const char_t* buf, size_t len) = 0;
|
||||||
virtual int flushConsole (Console& io) = 0;
|
virtual int flushConsole (Console& io) = 0;
|
||||||
virtual int nextConsole (Console& io) = 0;
|
virtual int nextConsole (Console& io) = 0;
|
||||||
/*@}*/
|
/// @}
|
||||||
|
|
||||||
// primitive handlers
|
// primitive handlers
|
||||||
virtual real_t pow (real_t x, real_t y) = 0;
|
virtual real_t pow (real_t x, real_t y) = 0;
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: StdAwk.hpp 275 2009-08-30 13:19:02Z hyunghwan.chung $
|
* $Id: StdAwk.hpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_AWK_STDAWK_HPP_
|
#ifndef _QSE_AWK_STDAWK_HPP_
|
||||||
@ -21,46 +23,37 @@
|
|||||||
|
|
||||||
#include <qse/awk/Awk.hpp>
|
#include <qse/awk/Awk.hpp>
|
||||||
|
|
||||||
/** @file
|
/// @file
|
||||||
* Standard AWK Interpreter
|
/// Standard AWK Interpreter
|
||||||
*
|
///
|
||||||
*/
|
/// @example awk05.cpp
|
||||||
|
/// This program demonstrates how to use QSE::StdAwk::loop().
|
||||||
/**
|
///
|
||||||
* @example awk05.cpp
|
/// @example awk06.cpp
|
||||||
* This program demonstrates how to use QSE::StdAwk::loop().
|
/// This program demonstrates how to use QSE::StdAwk::call().
|
||||||
*/
|
///
|
||||||
|
/// @example awk07.cpp
|
||||||
/**
|
/// This program demonstrates how to handle an indexed value.
|
||||||
* @example awk06.cpp
|
///
|
||||||
* This program demonstrates how to use QSE::StdAwk::call().
|
/// @example awk08.cpp
|
||||||
*/
|
/// This program shows how to add intrinsic functions.
|
||||||
|
///
|
||||||
/**
|
|
||||||
* @example awk07.cpp
|
|
||||||
* This program demonstrates how to handle an indexed value.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @example awk08.cpp
|
|
||||||
* This program shows how to add intrinsic functions.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
QSE_BEGIN_NAMESPACE(QSE)
|
QSE_BEGIN_NAMESPACE(QSE)
|
||||||
////////////////////////////////
|
////////////////////////////////
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Provides a more useful interpreter by overriding primitive methods,
|
/// The StdAwk class provides an easier-to-use interface by overriding
|
||||||
* and implementing the file handler, the pipe handler, and common intrinsic
|
/// primitive methods, and implementing the file handler, the pipe handler,
|
||||||
* functions.
|
/// and common intrinsic functions.
|
||||||
*/
|
///
|
||||||
class StdAwk: public Awk
|
class StdAwk: public Awk
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/**
|
///
|
||||||
* Implements script I/O from and to a file.
|
/// The SourceFile class implements script I/O from and to a file.
|
||||||
*/
|
///
|
||||||
class SourceFile: public Source
|
class SourceFile: public Source
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -79,10 +72,10 @@ public:
|
|||||||
qse_cstr_t dir;
|
qse_cstr_t dir;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* Implements script input from a string. The deparsing is not
|
/// The SourceString class implements script input from a string.
|
||||||
* supported.
|
/// Deparsing is not supported.
|
||||||
*/
|
///
|
||||||
class SourceString: public Source
|
class SourceString: public Source
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk.h 286 2009-09-14 13:29:55Z hyunghwan.chung $
|
* $Id: awk.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_AWK_AWK_H_
|
#ifndef _QSE_AWK_AWK_H_
|
||||||
@ -26,31 +28,29 @@
|
|||||||
|
|
||||||
/** @file
|
/** @file
|
||||||
* An embeddable AWK interpreter is defined in this header file.
|
* An embeddable AWK interpreter is defined in this header file.
|
||||||
|
*
|
||||||
|
* @todo
|
||||||
|
* - make enhancement to treat a function as a value
|
||||||
|
* - add RQ (right quote), LQ (left quote), ES (escaper) for more powerful
|
||||||
|
* record splitting
|
||||||
|
* - improve performance of qse_awk_rtx_readio() if RS is logner than 2 chars.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @example awk.c
|
* @example awk.c
|
||||||
* This program demonstrates how to build a complete awk interpreter.
|
* This program demonstrates how to build a complete awk interpreter.
|
||||||
*/
|
*
|
||||||
|
|
||||||
/**
|
|
||||||
* @example awk01.c
|
* @example awk01.c
|
||||||
* This program demonstrates how to use qse_awk_rtx_loop().
|
* This program demonstrates how to use qse_awk_rtx_loop().
|
||||||
*/
|
*
|
||||||
|
|
||||||
/**
|
|
||||||
* @example awk02.c
|
* @example awk02.c
|
||||||
* The program deparses the source code and prints it before executing it.
|
* The program deparses the source code and prints it before executing it.
|
||||||
*/
|
*
|
||||||
|
|
||||||
/**
|
|
||||||
* @example awk03.c
|
* @example awk03.c
|
||||||
* This program demonstrates how to use qse_awk_rtx_call().
|
* This program demonstrates how to use qse_awk_rtx_call().
|
||||||
* It parses the program stored in the string src and calls the functions
|
* It parses the program stored in the string src and calls the functions
|
||||||
* stated in the array fnc. If no errors occur, it should print 24.
|
* stated in the array fnc. If no errors occur, it should print 24.
|
||||||
*/
|
*
|
||||||
|
|
||||||
/**
|
|
||||||
* @example awk04.c
|
* @example awk04.c
|
||||||
* This programs shows how to qse_awk_rtx_call().
|
* This programs shows how to qse_awk_rtx_call().
|
||||||
*/
|
*/
|
||||||
@ -81,7 +81,7 @@
|
|||||||
*
|
*
|
||||||
* It provides an interface to change the conventional behavior of the
|
* It provides an interface to change the conventional behavior of the
|
||||||
* interpreter; most notably, you can call a particular function with
|
* interpreter; most notably, you can call a particular function with
|
||||||
* qse_awk_rtx_call() instead of entering the BEGIN,pattern-action blocks,END
|
* qse_awk_rtx_call() instead of entering the BEGIN, pattern-action blocks, END
|
||||||
* loop. By doing this, you may utilize a script in an event-driven way.
|
* loop. By doing this, you may utilize a script in an event-driven way.
|
||||||
*
|
*
|
||||||
* @sa qse_awk_rtx_t qse_awk_open qse_awk_close
|
* @sa qse_awk_rtx_t qse_awk_open qse_awk_close
|
||||||
@ -289,7 +289,6 @@ typedef enum qse_awk_sio_cmd_t qse_awk_sio_cmd_t;
|
|||||||
* The qse_awk_sio_lxc_t type defines a structure to store a character
|
* The qse_awk_sio_lxc_t type defines a structure to store a character
|
||||||
* with its location information.
|
* with its location information.
|
||||||
*/
|
*/
|
||||||
typedef struct qse_awk_sio_lxc_t qse_awk_sio_lxc_t;
|
|
||||||
struct qse_awk_sio_lxc_t
|
struct qse_awk_sio_lxc_t
|
||||||
{
|
{
|
||||||
qse_cint_t c; /**< character */
|
qse_cint_t c; /**< character */
|
||||||
@ -297,6 +296,7 @@ struct qse_awk_sio_lxc_t
|
|||||||
qse_size_t col; /**< column */
|
qse_size_t col; /**< column */
|
||||||
const qse_char_t* fil; /**< file */
|
const qse_char_t* fil; /**< file */
|
||||||
};
|
};
|
||||||
|
typedef struct qse_awk_sio_lxc_t qse_awk_sio_lxc_t;
|
||||||
|
|
||||||
struct qse_awk_sio_arg_t
|
struct qse_awk_sio_arg_t
|
||||||
{
|
{
|
||||||
@ -365,11 +365,15 @@ enum qse_awk_rio_mode_t
|
|||||||
};
|
};
|
||||||
typedef enum qse_awk_rio_mode_t qse_awk_rio_mode_t;
|
typedef enum qse_awk_rio_mode_t qse_awk_rio_mode_t;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The qse_awk_rio_rwcmode_t type defines I/O closing modes, especially for
|
||||||
|
* a two-way pipe.
|
||||||
|
*/
|
||||||
enum qse_awk_rio_rwcmode_t
|
enum qse_awk_rio_rwcmode_t
|
||||||
{
|
{
|
||||||
QSE_AWK_RIO_CLOSE_FULL = 0,
|
QSE_AWK_RIO_CLOSE_FULL = 0, /**< close both read and write end */
|
||||||
QSE_AWK_RIO_CLOSE_READ = 1,
|
QSE_AWK_RIO_CLOSE_READ = 1, /**< close the read end */
|
||||||
QSE_AWK_RIO_CLOSE_WRITE = 2
|
QSE_AWK_RIO_CLOSE_WRITE = 2 /**< close the write end */
|
||||||
};
|
};
|
||||||
typedef enum qse_awk_rio_rwcmode_t qse_awk_rio_rwcmode_t;
|
typedef enum qse_awk_rio_rwcmode_t qse_awk_rio_rwcmode_t;
|
||||||
|
|
||||||
@ -378,19 +382,18 @@ typedef enum qse_awk_rio_rwcmode_t qse_awk_rio_rwcmode_t;
|
|||||||
* I/O handler. An I/O handler should inspect the @a mode field and the
|
* I/O handler. An I/O handler should inspect the @a mode field and the
|
||||||
* @a name field and store an open handle to the @a handle field when
|
* @a name field and store an open handle to the @a handle field when
|
||||||
* #QSE_AWK_RIO_OPEN is requested. For other request type, it can refer
|
* #QSE_AWK_RIO_OPEN is requested. For other request type, it can refer
|
||||||
* to the handle field set previously.
|
* to the @a handle field set previously.
|
||||||
*/
|
*/
|
||||||
typedef struct qse_awk_rio_arg_t qse_awk_rio_arg_t;
|
|
||||||
struct qse_awk_rio_arg_t
|
struct qse_awk_rio_arg_t
|
||||||
{
|
{
|
||||||
qse_awk_rio_mode_t mode; /**< [IN] opening mode */
|
qse_awk_rio_mode_t mode; /**< opening mode */
|
||||||
qse_char_t* name; /**< [IN] name of I/O object */
|
qse_char_t* name; /**< name of I/O object */
|
||||||
qse_awk_rio_rwcmode_t rwcmode; /**< [IN] closing mode for rwpipe */
|
qse_awk_rio_rwcmode_t rwcmode; /**< closing mode for rwpipe */
|
||||||
void* handle; /**< [OUT] I/O handle set by a handler */
|
void* handle; /**< I/O handle set by a handler */
|
||||||
|
|
||||||
/*-- from here down, internal use only --*/
|
/*-- from here down, internal use only --*/
|
||||||
int type;
|
int type;
|
||||||
int rwcstate; /** closing state for rwpipe */
|
int rwcstate; /* closing state for rwpipe */
|
||||||
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
@ -409,6 +412,7 @@ struct qse_awk_rio_arg_t
|
|||||||
|
|
||||||
struct qse_awk_rio_arg_t* next;
|
struct qse_awk_rio_arg_t* next;
|
||||||
};
|
};
|
||||||
|
typedef struct qse_awk_rio_arg_t qse_awk_rio_arg_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_rio_fun_t type defines a runtime I/O handler.
|
* The qse_awk_rio_fun_t type defines a runtime I/O handler.
|
||||||
@ -424,7 +428,6 @@ typedef qse_ssize_t (*qse_awk_rio_fun_t) (
|
|||||||
/**
|
/**
|
||||||
* The qse_awk_prm_t type defines primitive functions
|
* The qse_awk_prm_t type defines primitive functions
|
||||||
*/
|
*/
|
||||||
typedef struct qse_awk_prm_t qse_awk_prm_t;
|
|
||||||
struct qse_awk_prm_t
|
struct qse_awk_prm_t
|
||||||
{
|
{
|
||||||
qse_awk_pow_t pow;
|
qse_awk_pow_t pow;
|
||||||
@ -461,17 +464,18 @@ struct qse_awk_prm_t
|
|||||||
);
|
);
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
typedef struct qse_awk_prm_t qse_awk_prm_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_loc_t type defines a structure to hold location.
|
* The qse_awk_loc_t type defines a structure to hold location.
|
||||||
*/
|
*/
|
||||||
typedef struct qse_awk_loc_t qse_awk_loc_t;
|
|
||||||
struct qse_awk_loc_t
|
struct qse_awk_loc_t
|
||||||
{
|
{
|
||||||
const qse_char_t* fil; /**< file */
|
const qse_char_t* fil; /**< file */
|
||||||
qse_size_t lin; /**< line */
|
qse_size_t lin; /**< line */
|
||||||
qse_size_t col; /**< column */
|
qse_size_t col; /**< column */
|
||||||
};
|
};
|
||||||
|
typedef struct qse_awk_loc_t qse_awk_loc_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_sio_t type defines a script stream handler set.
|
* The qse_awk_sio_t type defines a script stream handler set.
|
||||||
@ -599,7 +603,7 @@ enum qse_awk_option_t
|
|||||||
* for (i = 0; i < NF; i++) print i " [" $(i+1) "]";
|
* for (i = 0; i < NF; i++) print i " [" $(i+1) "]";
|
||||||
* }
|
* }
|
||||||
* @endcode
|
* @endcode
|
||||||
* " a b c " is split to [a], [b], [c] if #QSE_AWK_STRIPRSPC is on.
|
* " a b c " is split to [a], [b], [c] if #QSE_AWK_STRIPRECSPC is on.
|
||||||
* Otherwise, it is split to [], [a], [b], [c], [].
|
* Otherwise, it is split to [], [a], [b], [c], [].
|
||||||
*/
|
*/
|
||||||
QSE_AWK_STRIPRECSPC = (1 << 6),
|
QSE_AWK_STRIPRECSPC = (1 << 6),
|
||||||
@ -658,6 +662,7 @@ enum qse_awk_option_t
|
|||||||
QSE_AWK_NEWLINE | QSE_AWK_PABLOCK |
|
QSE_AWK_NEWLINE | QSE_AWK_PABLOCK |
|
||||||
QSE_AWK_STRIPSTRSPC | QSE_AWK_STRICTNAMING
|
QSE_AWK_STRIPSTRSPC | QSE_AWK_STRICTNAMING
|
||||||
};
|
};
|
||||||
|
typedef enum qse_awk_option_t qse_awk_option_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_errnum_t type defines error codes.
|
* The qse_awk_errnum_t type defines error codes.
|
||||||
@ -823,7 +828,10 @@ typedef const qse_char_t* (*qse_awk_errstr_t) (
|
|||||||
qse_awk_errnum_t num /**< error number */
|
qse_awk_errnum_t num /**< error number */
|
||||||
);
|
);
|
||||||
|
|
||||||
/* depth types */
|
/**
|
||||||
|
* The qse_awk_depth_t type defines operation types requiring recursion depth
|
||||||
|
* control.
|
||||||
|
*/
|
||||||
enum qse_awk_depth_t
|
enum qse_awk_depth_t
|
||||||
{
|
{
|
||||||
QSE_AWK_DEPTH_BLOCK_PARSE = (1 << 0),
|
QSE_AWK_DEPTH_BLOCK_PARSE = (1 << 0),
|
||||||
@ -869,6 +877,7 @@ enum qse_awk_gbl_id_t
|
|||||||
QSE_AWK_MIN_GBL_ID = QSE_AWK_GBL_ARGC,
|
QSE_AWK_MIN_GBL_ID = QSE_AWK_GBL_ARGC,
|
||||||
QSE_AWK_MAX_GBL_ID = QSE_AWK_GBL_SUBSEP
|
QSE_AWK_MAX_GBL_ID = QSE_AWK_GBL_SUBSEP
|
||||||
};
|
};
|
||||||
|
typedef enum qse_awk_gbl_id_t qse_awk_gbl_id_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_val_type_t type defines types of AWK values. Each value
|
* The qse_awk_val_type_t type defines types of AWK values. Each value
|
||||||
@ -1411,7 +1420,7 @@ void qse_awk_rtx_close (
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_rtx_loop() function executes the BEGIN block, pattern-action
|
* The qse_awk_rtx_loop() function executes the BEGIN block, pattern-action
|
||||||
* blocks and the END blocks in an AWk program. It returns the global return
|
* blocks and the END blocks in an AWK program. It returns the global return
|
||||||
* value of which the reference count must be decremented when not necessary.
|
* value of which the reference count must be decremented when not necessary.
|
||||||
* Multiple invocations of the function for the lifetime of a runtime context
|
* Multiple invocations of the function for the lifetime of a runtime context
|
||||||
* is not desirable.
|
* is not desirable.
|
||||||
@ -1437,7 +1446,7 @@ qse_awk_val_t* qse_awk_rtx_loop (
|
|||||||
* The qse_awk_rtx_call() function invokes an AWK function. However, it is
|
* The qse_awk_rtx_call() function invokes an AWK function. However, it is
|
||||||
* not able to invoke an intrinsic function such as split().
|
* not able to invoke an intrinsic function such as split().
|
||||||
* The #QSE_AWK_PABLOCK option can be turned off to make illegal the BEGIN
|
* The #QSE_AWK_PABLOCK option can be turned off to make illegal the BEGIN
|
||||||
* block, pattern-action blocks, and the END block.
|
* block, the pattern-action blocks, and the END block.
|
||||||
*
|
*
|
||||||
* The example shows typical usage of the function.
|
* The example shows typical usage of the function.
|
||||||
* @code
|
* @code
|
||||||
@ -1463,25 +1472,26 @@ qse_awk_val_t* qse_awk_rtx_call (
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_stopall() function aborts all active runtime contexts
|
* The qse_awk_stopall() function aborts all active runtime contexts
|
||||||
* invoked with the awk parameter.
|
* associated with @a awk.
|
||||||
*/
|
*/
|
||||||
void qse_awk_stopall (
|
void qse_awk_stopall (
|
||||||
qse_awk_t* awk /**< awk */
|
qse_awk_t* awk /**< awk */
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_shouldstop function tests if qse_awk_rtx_stop() has been called.
|
* The qse_awk_isstopreq() function tests if qse_awk_rtx_stop() has been
|
||||||
|
* called.
|
||||||
*/
|
*/
|
||||||
qse_bool_t qse_awk_rtx_shouldstop (
|
qse_bool_t qse_awk_rtx_isstopreq (
|
||||||
qse_awk_rtx_t* rtx
|
qse_awk_rtx_t* rtx /**< runtime context */
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_rtx_stop() function causes the active qse_awk_run() function to
|
* The qse_awk_rtx_stop() function causes an active runtime context @a rtx to
|
||||||
* be aborted.
|
* be aborted.
|
||||||
*/
|
*/
|
||||||
void qse_awk_rtx_stop (
|
void qse_awk_rtx_stop (
|
||||||
qse_awk_rtx_t* rtx
|
qse_awk_rtx_t* rtx /**< runtime context */
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1572,7 +1582,8 @@ int qse_awk_rtx_setofilename (
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The qse_awk_rtx_getawk() function gets the owning awk object.
|
* The qse_awk_rtx_getawk() function gets the owner of a runtime context @a rtx.
|
||||||
|
* @return owner of a runtime context @a rtx.
|
||||||
*/
|
*/
|
||||||
qse_awk_t* qse_awk_rtx_getawk (
|
qse_awk_t* qse_awk_rtx_getawk (
|
||||||
qse_awk_rtx_t* rtx /**< runtime context */
|
qse_awk_rtx_t* rtx /**< runtime context */
|
||||||
@ -1683,8 +1694,8 @@ void qse_awk_rtx_seterror (
|
|||||||
* and fields ($1 to $N).
|
* and fields ($1 to $N).
|
||||||
*/
|
*/
|
||||||
int qse_awk_rtx_clrrec (
|
int qse_awk_rtx_clrrec (
|
||||||
qse_awk_rtx_t* rtx, /** runtime context */
|
qse_awk_rtx_t* rtx, /**< runtime context */
|
||||||
qse_bool_t skip_inrec_line
|
qse_bool_t skip_inrec_line
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: std.h 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: std.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_AWK_STD_H_
|
#ifndef _QSE_AWK_STD_H_
|
||||||
@ -29,11 +31,6 @@
|
|||||||
* The source script handler does not evaluate a file name of the "var=val"
|
* The source script handler does not evaluate a file name of the "var=val"
|
||||||
* form as an assignment expression. Instead, it just treats it as a
|
* form as an assignment expression. Instead, it just treats it as a
|
||||||
* normal file name.
|
* normal file name.
|
||||||
*
|
|
||||||
* @todo
|
|
||||||
* - add code to treat a function as a value
|
|
||||||
* - add RQ and LQ for more powerful record splitting
|
|
||||||
* - improve performance in qse_awk_rtx_readio() if RS is logner than 2 chars.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: chr.h 127 2009-05-07 13:15:04Z hyunghwan.chung $
|
* $Id: chr.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_CHR_H_
|
#ifndef _QSE_CMN_CHR_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: dll.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: dll.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_DLL_H_
|
#ifndef _QSE_CMN_DLL_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: fio.h 204 2009-06-18 12:08:06Z hyunghwan.chung $
|
* $Id: fio.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_FIO_H_
|
#ifndef _QSE_CMN_FIO_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: lda.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: lda.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_LDA_H_
|
#ifndef _QSE_CMN_LDA_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_MAIN_H_
|
#ifndef _QSE_CMN_MAIN_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: map.h 248 2009-08-06 08:27:14Z hyunghwan.chung $
|
* $Id: map.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_MAP_H_
|
#ifndef _QSE_CMN_MAP_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: mem.h 186 2009-06-06 13:42:57Z hyunghwan.chung $
|
* $Id: mem.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_MEM_H_
|
#ifndef _QSE_CMN_MEM_H_
|
||||||
|
@ -1,3 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* $Id$
|
||||||
|
*
|
||||||
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
|
QSE is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Lesser General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_MISC_H_
|
#ifndef _QSE_CMN_MISC_H_
|
||||||
#define _QSE_CMN_MISC_H_
|
#define _QSE_CMN_MISC_H_
|
||||||
|
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: opt.h 190 2009-06-07 12:11:56Z hyunghwan.chung $
|
* $Id: opt.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_OPT_H_
|
#ifndef _QSE_CMN_OPT_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: pio.h 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: pio.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitapions under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_PIO_H_
|
#ifndef _QSE_CMN_PIO_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: rex.h 236 2009-07-16 08:27:53Z hyunghwan.chung $
|
* $Id: rex.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_REX_H_
|
#ifndef _QSE_CMN_REX_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sio.h 182 2009-06-03 21:50:32Z hyunghwan.chung $
|
* $Id: sio.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_SIO_H_
|
#ifndef _QSE_CMN_SIO_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sll.h 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: sll.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_SLL_H_
|
#ifndef _QSE_CMN_SLL_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: stdio.h 419 2008-10-13 11:32:58Z baconevi $
|
* $Id: stdio.h 419 2008-10-13 11:32:58Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_STDIO_H_
|
#ifndef _QSE_CMN_STDIO_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: str.h 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: str.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_STR_H_
|
#ifndef _QSE_CMN_STR_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: time.h 187 2009-06-07 05:03:44Z hyunghwan.chung $
|
* $Id: time.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_TIME_H_
|
#ifndef _QSE_CMN_TIME_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tio.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: tio.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_CMN_TIO_H_
|
#ifndef _QSE_CMN_TIO_H_
|
||||||
|
@ -1,7 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: conf_msw.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: conf_msw.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
* {License}
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
|
QSE is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Lesser General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1,7 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: conf_vms.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: conf_vms.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
* {License}
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
|
QSE is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Lesser General Public License as
|
||||||
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* all of vax, alpha, ia64 are in the little endian. */
|
/* all of vax, alpha, ia64 are in the little endian. */
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: lsp.h 183 2008-06-03 08:18:55Z baconevi $
|
* $Id: lsp.h 183 2008-06-03 08:18:55Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LSP_LSP_H_
|
#ifndef _QSE_LSP_LSP_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: macros.h 212 2009-06-25 07:39:27Z hyunghwan.chung $
|
* $Id: macros.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_MACROS_H_
|
#ifndef _QSE_MACROS_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: pack1.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: pack1.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__GNUC__)
|
#if defined(__GNUC__)
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: pack2.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: pack2.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__GNUC__)
|
#if defined(__GNUC__)
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Sed.hpp 280 2009-09-07 13:34:49Z hyunghwan.chung $
|
* $Id: Sed.hpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_SED_SED_HPP_
|
#ifndef _QSE_SED_SED_HPP_
|
||||||
@ -31,7 +33,7 @@ QSE_BEGIN_NAMESPACE(QSE)
|
|||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Sed class implements a stream editor.
|
* The Sed class implements a stream editor by wrapping around #qse_sed_t.
|
||||||
*/
|
*/
|
||||||
class Sed: public Mmgr
|
class Sed: public Mmgr
|
||||||
{
|
{
|
||||||
@ -53,110 +55,113 @@ public:
|
|||||||
/// The depth_t type redefines an depth IDs
|
/// The depth_t type redefines an depth IDs
|
||||||
typedef qse_sed_depth_t depth_t;
|
typedef qse_sed_depth_t depth_t;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The Sed() function creates an uninitialized stream editor.
|
/// The Sed() function creates an uninitialized stream editor.
|
||||||
*/
|
///
|
||||||
Sed (): sed (QSE_NULL), dflerrstr (QSE_NULL) {}
|
Sed (): sed (QSE_NULL), dflerrstr (QSE_NULL) {}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The ~Sed() function destroys a stream editor.
|
/// The ~Sed() function destroys a stream editor.
|
||||||
* @note The close() function is not called by this destructor.
|
/// @note The close() function is not called by this destructor.
|
||||||
* To avoid resource leaks, You should call close() before
|
/// To avoid resource leaks, You should call close() before
|
||||||
* a stream editor is destroyed if it has been initialized
|
/// a stream editor is destroyed if it has been initialized
|
||||||
* with open().
|
/// with open().
|
||||||
*/
|
///
|
||||||
~Sed () {}
|
~Sed () {}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The open() function initializes a stream editor and makes it
|
/// The open() function initializes a stream editor and makes it
|
||||||
* ready for subsequent use.
|
/// ready for subsequent use.
|
||||||
* @return 0 on success, -1 on failure.
|
/// @return 0 on success, -1 on failure.
|
||||||
*/
|
///
|
||||||
int open ();
|
int open ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The close() function finalizes a stream editor.
|
/// The close() function finalizes a stream editor.
|
||||||
*/
|
///
|
||||||
void close ();
|
void close ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The compile() function compiles a null-terminated string pointed
|
/// The compile() function compiles a null-terminated string pointed
|
||||||
* to by @a sptr.
|
/// to by @a sptr.
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int compile (
|
int compile (
|
||||||
const char_t* sptr ///< a pointer to a null-terminated string
|
const char_t* sptr ///< a pointer to a null-terminated string
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The compile() function compiles a string pointed to by @a sptr
|
/// The compile() function compiles a string pointed to by @a sptr
|
||||||
* and of the length @a slen.
|
/// and of the length @a slen.
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int compile (
|
int compile (
|
||||||
const char_t* sptr, ///< a pointer to a string
|
const char_t* sptr, ///< a pointer to a string
|
||||||
size_t slen ///< the number of characters in the string
|
size_t slen ///< the number of characters in the string
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The execute() function executes compiled commands over the IO
|
/// The execute() function executes compiled commands over the I/O
|
||||||
* streams defined through IO handlers
|
/// streams defined through I/O handlers
|
||||||
* @return 0 on success, -1 on failure
|
/// @return 0 on success, -1 on failure
|
||||||
*/
|
///
|
||||||
int execute ();
|
int execute ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getOption() function gets the current options.
|
/// The getOption() function gets the current options.
|
||||||
* @return current option code
|
/// @return 0 or current options ORed of #option_t enumerators.
|
||||||
*/
|
///
|
||||||
int getOption () const;
|
int getOption () const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The setOption() function sets options for a stream editor.
|
/// The setOption() function sets options for a stream editor.
|
||||||
* The option code @a opt is 0 or OR'ed of #option_t enumerators.
|
/// The option code @a opt is 0 or OR'ed of #option_t enumerators.
|
||||||
*/
|
///
|
||||||
void setOption (
|
void setOption (
|
||||||
int opt ///< option code
|
int opt ///< option code
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getMaxDepth() function gets the maximum processing depth.
|
/// The getMaxDepth() function gets the maximum processing depth for
|
||||||
*/
|
/// an operation type identified by @a id.
|
||||||
size_t getMaxDepth (depth_t id) const;
|
///
|
||||||
|
size_t getMaxDepth (
|
||||||
|
depth_t id ///< operation type
|
||||||
|
) const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The setMaxDepth() function gets the maximum processing depth.
|
/// The setMaxDepth() function gets the maximum processing depth.
|
||||||
*/
|
///
|
||||||
void setMaxDepth (
|
void setMaxDepth (
|
||||||
int ids, ///< 0 or a number OR'ed of depth_t values
|
int ids, ///< 0 or a number OR'ed of depth_t values
|
||||||
size_t depth ///< 0 maximum depth
|
size_t depth ///< 0 maximum depth
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getErrorMessage() function gets the description of the last
|
/// The getErrorMessage() function gets the description of the last
|
||||||
* error occurred. It returns an empty string if the stream editor
|
/// error occurred. It returns an empty string if the stream editor
|
||||||
* has not been initialized with the open() function.
|
/// has not been initialized with the open() function.
|
||||||
*/
|
///
|
||||||
const char_t* getErrorMessage() const;
|
const char_t* getErrorMessage() const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getErrorLocation() function gets the location where
|
/// The getErrorLocation() function gets the location where
|
||||||
* the last error occurred. The line and the column of the ::loc_t
|
/// the last error occurred. The line and the column of the #loc_t
|
||||||
* structure retruend are 0 if the stream editor has not been
|
/// structure retruend are 0 if the stream editor has not been
|
||||||
* initialized with the open() function.
|
/// initialized with the open() function.
|
||||||
*/
|
///
|
||||||
loc_t getErrorLocation () const;
|
loc_t getErrorLocation () const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getErrorNumber() function gets the number of the last
|
/// The getErrorNumber() function gets the number of the last
|
||||||
* error occurred. It returns QSE_SED_ENOERR if the stream editor
|
/// error occurred. It returns QSE_SED_ENOERR if the stream editor
|
||||||
* has not been initialized with the open() function.
|
/// has not been initialized with the open() function.
|
||||||
*/
|
///
|
||||||
errnum_t getErrorNumber () const;
|
errnum_t getErrorNumber () const;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The setError() function sets information on an error occurred.
|
/// The setError() function sets information on an error occurred.
|
||||||
*/
|
///
|
||||||
void setError (
|
void setError (
|
||||||
errnum_t num, ///< error number
|
errnum_t num, ///< error number
|
||||||
const cstr_t* args = QSE_NULL, ///< string array for formatting
|
const cstr_t* args = QSE_NULL, ///< string array for formatting
|
||||||
@ -164,32 +169,32 @@ public:
|
|||||||
const loc_t* loc = QSE_NULL ///< error location
|
const loc_t* loc = QSE_NULL ///< error location
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getConsoleLine() function returns the current line
|
/// The getConsoleLine() function returns the current line
|
||||||
* number from an input console.
|
/// number from an input console.
|
||||||
* @return current line number
|
/// @return current line number
|
||||||
*/
|
///
|
||||||
size_t getConsoleLine ();
|
size_t getConsoleLine ();
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The setConsoleLine() function changes the current line
|
/// The setConsoleLine() function changes the current line
|
||||||
* number from an input console.
|
/// number from an input console.
|
||||||
*/
|
///
|
||||||
void setConsoleLine (
|
void setConsoleLine (
|
||||||
size_t num ///< a line number
|
size_t num ///< a line number
|
||||||
);
|
);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/**
|
///
|
||||||
* The IOBase class is a base class for IO operation. It wraps around
|
/// The IOBase class is a base class for I/O operations. It wraps around
|
||||||
* the primitive Sed::io_arg_t type and exposes relevant information to
|
/// the primitive #io_arg_t type and exposes relevant information to
|
||||||
* an IO handler
|
/// an I/O handler.
|
||||||
*/
|
///
|
||||||
class IOBase
|
class IOBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* The Mode enumerator defines IO operation modes.
|
* The Mode enumerator defines I/O operation modes.
|
||||||
*/
|
*/
|
||||||
enum Mode
|
enum Mode
|
||||||
{
|
{
|
||||||
@ -202,33 +207,33 @@ protected:
|
|||||||
arg(arg), mode (mode) {}
|
arg(arg), mode (mode) {}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
///
|
||||||
* The getHandle() function gets an IO handle set with the
|
/// The getHandle() function gets an I/O handle set with the
|
||||||
* setHandle() function. Once set, it is maintained until
|
/// setHandle() function. Once set, it is maintained until
|
||||||
* an assoicated IO handler closes it or changes it with
|
/// an assoicated I/O handler closes it or changes it with
|
||||||
* another call to setHandle().
|
/// another call to setHandle().
|
||||||
*/
|
///
|
||||||
const void* getHandle () const
|
const void* getHandle () const
|
||||||
{
|
{
|
||||||
return arg->handle;
|
return arg->handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The setHandle() function sets an IO handle and is typically
|
/// The setHandle() function sets an I/O handle and is typically
|
||||||
* called in stream opening functions such as Sed::openConsole()
|
/// called in stream opening functions such as openConsole()
|
||||||
* and Sed::openFile(). You can get the handle with the
|
/// and openFile(). You can get the handle with getHandle()
|
||||||
* getHandle() function as needed.
|
// as needed.
|
||||||
*/
|
///
|
||||||
void setHandle (void* handle)
|
void setHandle (void* handle)
|
||||||
{
|
{
|
||||||
arg->handle = handle;
|
arg->handle = handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getMode() function gets the IO operation mode requested.
|
/// The getMode() function gets the I/O mode requested.
|
||||||
* A stream opening function can inspect the mode requested and
|
/// A stream opening function can inspect the mode requested and
|
||||||
* open a stream properly
|
/// open a stream properly
|
||||||
*/
|
///
|
||||||
Mode getMode ()
|
Mode getMode ()
|
||||||
{
|
{
|
||||||
return this->mode;
|
return this->mode;
|
||||||
@ -240,10 +245,10 @@ protected:
|
|||||||
Mode mode;
|
Mode mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The Console class inherits the IO class and provides functionality
|
/// The Console class inherits the IOBase class and provides
|
||||||
* for console IO operations.
|
/// functionality for console I/O operations.
|
||||||
*/
|
///
|
||||||
class Console: public IOBase
|
class Console: public IOBase
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
@ -252,10 +257,10 @@ protected:
|
|||||||
IOBase (arg, mode) {}
|
IOBase (arg, mode) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The File class inherits the IO class and provides functionality
|
/// The File class inherits the IOBase class and provides functionality
|
||||||
* for file IO operations.
|
/// for file I/O operations.
|
||||||
*/
|
///
|
||||||
class File: public IOBase
|
class File: public IOBase
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
@ -264,130 +269,130 @@ protected:
|
|||||||
IOBase (arg, mode) {}
|
IOBase (arg, mode) {}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
///
|
||||||
* The getName() function gets the file path requested.
|
/// The getName() function gets the file path requested.
|
||||||
* You can call this function from the openFile() function
|
/// You can call this function from the openFile() function
|
||||||
* to determine a file to open.
|
/// to determine a file to open.
|
||||||
*/
|
///
|
||||||
const char_t* getName () const
|
const char_t* getName () const
|
||||||
{
|
{
|
||||||
return arg->path;
|
return arg->path;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The openConsole() function should be implemented by a subclass
|
/// The openConsole() function should be implemented by a subclass
|
||||||
* to open a console. It can get the mode requested by invoking
|
/// to open a console. It can get the mode requested by invoking
|
||||||
* the Console::getMode() function over the console object @a io.
|
/// the Console::getMode() function over the console object @a io.
|
||||||
*
|
///
|
||||||
* When it comes to the meaning of the return value, 0 may look
|
/// When it comes to the meaning of the return value, 0 may look
|
||||||
* a bit tricky. Easygoers can just return 1 on success and never
|
/// a bit tricky. Easygoers can just return 1 on success and never
|
||||||
* return 0 from openConsole().
|
/// return 0 from openConsole().
|
||||||
* - If 0 is returned for a Console::READ console, the execute()
|
/// - If 0 is returned for a Console::READ console, the execute()
|
||||||
* function returns success after having calle closeConsole() as it
|
/// function returns success after having calle closeConsole() as it
|
||||||
* has opened a console but has reached EOF.
|
/// has opened a console but has reached EOF.
|
||||||
* - If 0 is returned for a Console::WRITE console and there are any
|
/// - If 0 is returned for a Console::WRITE console and there are any
|
||||||
* following writeConsole() requests, the execute() function
|
/// following writeConsole() requests, the execute() function
|
||||||
* returns failure after having called closeConsole() as it cannot
|
/// returns failure after having called closeConsole() as it cannot
|
||||||
* write further on EOF.
|
/// write further on EOF.
|
||||||
*
|
///
|
||||||
* @return -1 on failure, 1 on success, 0 on success but reached EOF.
|
/// @return -1 on failure, 1 on success, 0 on success but reached EOF.
|
||||||
*/
|
///
|
||||||
virtual int openConsole (
|
virtual int openConsole (
|
||||||
Console& io ///< a console object
|
Console& io ///< a console object
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The closeConsole() function should be implemented by a subclass
|
/// The closeConsole() function should be implemented by a subclass
|
||||||
* to close a console.
|
/// to close a console.
|
||||||
*/
|
///
|
||||||
virtual int closeConsole (
|
virtual int closeConsole (
|
||||||
Console& io ///< a console object
|
Console& io ///< a console object
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The readConsole() function should be implemented by a subclass
|
/// The readConsole() function should be implemented by a subclass
|
||||||
* to read from a console. It should fill the memory area pointed to
|
/// to read from a console. It should fill the memory area pointed to
|
||||||
* by @a buf, but at most \a len characters.
|
/// by @a buf, but at most \a len characters.
|
||||||
* @return the number of characters read on success,
|
/// @return the number of characters read on success,
|
||||||
* 0 on EOF, -1 on failure
|
/// 0 on EOF, -1 on failure
|
||||||
*/
|
///
|
||||||
virtual ssize_t readConsole (
|
virtual ssize_t readConsole (
|
||||||
Console& io, ///< a console object
|
Console& io, ///< a console object
|
||||||
char_t* buf, ///< a buffer pointer
|
char_t* buf, ///< a buffer pointer
|
||||||
size_t len ///< the size of a buffer
|
size_t len ///< the size of a buffer
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The writeConsole() function should be implemented by a subclass
|
/// The writeConsole() function should be implemented by a subclass
|
||||||
* to write to a console. It should write up to @a len characters
|
/// to write to a console. It should write up to @a len characters
|
||||||
* from the memory are pointed to by @a data.
|
/// from the memory are pointed to by @a data.
|
||||||
* @return the number of characters written on success
|
/// @return the number of characters written on success
|
||||||
* 0 on EOF, -1 on failure
|
/// 0 on EOF, -1 on failure
|
||||||
* @note The number of characters written may be less than @a len.
|
/// @note The number of characters written may be less than @a len.
|
||||||
* But the return value 0 causes execute() to fail as
|
/// But the return value 0 causes execute() to fail as
|
||||||
* writeConsole() is called when there are data to write and
|
/// writeConsole() is called when there are data to write and
|
||||||
* it has indicated EOF.
|
/// it has indicated EOF.
|
||||||
*/
|
///
|
||||||
virtual ssize_t writeConsole (
|
virtual ssize_t writeConsole (
|
||||||
Console& io, ///< a console object
|
Console& io, ///< a console object
|
||||||
const char_t* data, ///< a pointer to data to write
|
const char_t* data, ///< a pointer to data to write
|
||||||
size_t len ///< the length of data
|
size_t len ///< the length of data
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The openFile() function should be implemented by a subclass
|
/// The openFile() function should be implemented by a subclass
|
||||||
* to open a file. It can get the mode requested by invoking
|
/// to open a file. It can get the mode requested by invoking
|
||||||
* the File::getMode() function over the file object @a io.
|
/// the File::getMode() function over the file object @a io.
|
||||||
* @return -1 on failure, 1 on success, 0 on success but reached EOF.
|
/// @return -1 on failure, 1 on success, 0 on success but reached EOF.
|
||||||
*/
|
///
|
||||||
virtual int openFile (
|
virtual int openFile (
|
||||||
File& io ///< a file object
|
File& io ///< a file object
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The closeFile() function should be implemented by a subclass
|
/// The closeFile() function should be implemented by a subclass
|
||||||
* to close a file.
|
/// to close a file.
|
||||||
*/
|
///
|
||||||
virtual int closeFile (
|
virtual int closeFile (
|
||||||
File& io ///< a file object
|
File& io ///< a file object
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The readFile() function should be implemented by a subclass
|
/// The readFile() function should be implemented by a subclass
|
||||||
* to read from a file. It should fill the memory area pointed to
|
/// to read from a file. It should fill the memory area pointed to
|
||||||
* by @a buf, but at most \a len characters.
|
/// by @a buf, but at most \a len characters.
|
||||||
* @return the number of characters read on success,
|
/// @return the number of characters read on success,
|
||||||
* 0 on EOF, -1 on failure
|
/// 0 on EOF, -1 on failure
|
||||||
*/
|
///
|
||||||
virtual ssize_t readFile (
|
virtual ssize_t readFile (
|
||||||
File& io, ///< a file object
|
File& io, ///< a file object
|
||||||
char_t* buf, ///< a buffer pointer
|
char_t* buf, ///< a buffer pointer
|
||||||
size_t len ///< the size of a buffer
|
size_t len ///< the size of a buffer
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The writeFile() function should be implemented by a subclass
|
/// The writeFile() function should be implemented by a subclass
|
||||||
* to write to a file. It should write up to @a len characters
|
/// to write to a file. It should write up to @a len characters
|
||||||
* from the memory are pointed to by @a data.
|
/// from the memory are pointed to by @a data.
|
||||||
* @return the number of characters written on success
|
/// @return the number of characters written on success
|
||||||
* 0 on EOF, -1 on failure
|
/// 0 on EOF, -1 on failure
|
||||||
* @note The number of characters written may be less than @a len.
|
/// @note The number of characters written may be less than @a len.
|
||||||
* But the return value 0 causes execute() to fail as
|
/// But the return value 0 causes execute() to fail as
|
||||||
* writeFile() is called when there are data to write and
|
/// writeFile() is called when there are data to write and
|
||||||
* it has indicated EOF.
|
/// it has indicated EOF.
|
||||||
*/
|
///
|
||||||
virtual ssize_t writeFile (
|
virtual ssize_t writeFile (
|
||||||
File& io, ///< a file object
|
File& io, ///< a file object
|
||||||
const char_t* data, ///< a pointer to data to write
|
const char_t* data, ///< a pointer to data to write
|
||||||
size_t len ///< the length of data
|
size_t len ///< the length of data
|
||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
/**
|
///
|
||||||
* The getErrorString() function returns an error formatting string
|
/// The getErrorString() function returns an error formatting string
|
||||||
* for the error number @a num. A subclass wishing to customize
|
/// for the error number @a num. A subclass wishing to customize
|
||||||
* an error formatting string may override this function.
|
/// an error formatting string may override this function.
|
||||||
*/
|
///
|
||||||
virtual const char_t* getErrorString (
|
virtual const char_t* getErrorString (
|
||||||
errnum_t num ///< an error number
|
errnum_t num ///< an error number
|
||||||
) const;
|
) const;
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: StdSed.hpp 275 2009-08-30 13:19:02Z hyunghwan.chung $
|
* $Id: StdSed.hpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_SED_STDSED_HPP_
|
#ifndef _QSE_SED_STDSED_HPP_
|
||||||
@ -31,7 +33,7 @@ QSE_BEGIN_NAMESPACE(QSE)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* The StdSed class inherits the Sed class and implements the standard
|
* The StdSed class inherits the Sed class and implements the standard
|
||||||
* IO handlers and memory manager for easier use.
|
* I/O handlers and memory manager for easier use.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
class StdSed: public Sed
|
class StdSed: public Sed
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sed.h 280 2009-09-07 13:34:49Z hyunghwan.chung $
|
* $Id: sed.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_SED_SED_H_
|
#ifndef _QSE_SED_SED_H_
|
||||||
@ -64,12 +66,12 @@ typedef struct qse_sed_t qse_sed_t;
|
|||||||
/**
|
/**
|
||||||
* The qse_sed_loc_t defines a structure to store location information.
|
* The qse_sed_loc_t defines a structure to store location information.
|
||||||
*/
|
*/
|
||||||
typedef struct qse_sed_loc_t qse_sed_loc_t;
|
|
||||||
struct qse_sed_loc_t
|
struct qse_sed_loc_t
|
||||||
{
|
{
|
||||||
qse_size_t lin; /**< line */
|
qse_size_t lin; /**< line */
|
||||||
qse_size_t col; /**< column */
|
qse_size_t col; /**< column */
|
||||||
};
|
};
|
||||||
|
typedef struct qse_sed_loc_t qse_sed_loc_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* the qse_sed_errnum_t type defines error numbers.
|
* the qse_sed_errnum_t type defines error numbers.
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: types.h 230 2009-07-13 08:51:23Z hyunghwan.chung $
|
* $Id: types.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_TYPES_H_
|
#ifndef _QSE_TYPES_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: unpack.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
* $Id: unpack.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__GNUC__)
|
#if defined(__GNUC__)
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: http.h 223 2008-06-26 06:44:41Z baconevi $
|
* $Id: http.h 223 2008-06-26 06:44:41Z baconevi $
|
||||||
*
|
|
||||||
* {License}
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_UTL_HTTP_H_
|
#ifndef _QSE_UTL_HTTP_H_
|
||||||
|
@ -1,19 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tgp.h 235 2008-07-05 07:25:54Z baconevi $
|
* $Id: tgp.h 235 2008-07-05 07:25:54Z baconevi $
|
||||||
*
|
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_UTL_TGP_H_
|
#ifndef _QSE_UTL_TGP_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Awk.cpp 286 2009-09-14 13:29:55Z hyunghwan.chung $
|
* $Id: Awk.cpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/Awk.hpp>
|
#include <qse/awk/Awk.hpp>
|
||||||
@ -610,7 +612,7 @@ int Awk::Value::setIndexedVal (Run* r, const Index& idx, val_t* v)
|
|||||||
{
|
{
|
||||||
qse_awk_rtx_refdownval (r->rtx, v);
|
qse_awk_rtx_refdownval (r->rtx, v);
|
||||||
qse_awk_rtx_refdownval (r->rtx, map);
|
qse_awk_rtx_refdownval (r->rtx, map);
|
||||||
r->setError (ERR_NOMEM);
|
r->setError (QSE_AWK_ENOMEM);
|
||||||
r->awk->retrieveError (r);
|
r->awk->retrieveError (r);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -631,7 +633,7 @@ int Awk::Value::setIndexedVal (Run* r, const Index& idx, val_t* v)
|
|||||||
if (run != r)
|
if (run != r)
|
||||||
{
|
{
|
||||||
// it can't span across multiple runtime contexts
|
// it can't span across multiple runtime contexts
|
||||||
run->setError (ERR_INVAL);
|
run->setError (QSE_AWK_EINVAL);
|
||||||
run->awk->retrieveError (run);
|
run->awk->retrieveError (run);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -644,7 +646,7 @@ int Awk::Value::setIndexedVal (Run* r, const Index& idx, val_t* v)
|
|||||||
if (pair == QSE_NULL)
|
if (pair == QSE_NULL)
|
||||||
{
|
{
|
||||||
qse_awk_rtx_refdownval (r->rtx, v);
|
qse_awk_rtx_refdownval (r->rtx, v);
|
||||||
run->setError (ERR_NOMEM);
|
run->setError (QSE_AWK_ENOMEM);
|
||||||
run->awk->retrieveError (run);
|
run->awk->retrieveError (run);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -901,16 +903,16 @@ void Awk::Run::stop () const
|
|||||||
qse_awk_rtx_stop (this->rtx);
|
qse_awk_rtx_stop (this->rtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Awk::Run::shouldStop () const
|
bool Awk::Run::isStopReq () const
|
||||||
{
|
{
|
||||||
QSE_ASSERT (this->rtx != QSE_NULL);
|
QSE_ASSERT (this->rtx != QSE_NULL);
|
||||||
return qse_awk_rtx_shouldstop (this->rtx)? true: false;
|
return qse_awk_rtx_isstopreq (this->rtx)? true: false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Awk::ErrorNumber Awk::Run::getErrorNumber () const
|
Awk::errnum_t Awk::Run::getErrorNumber () const
|
||||||
{
|
{
|
||||||
QSE_ASSERT (this->rtx != QSE_NULL);
|
QSE_ASSERT (this->rtx != QSE_NULL);
|
||||||
return (ErrorNumber)qse_awk_rtx_geterrnum (this->rtx);
|
return qse_awk_rtx_geterrnum (this->rtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
Awk::loc_t Awk::Run::getErrorLocation () const
|
Awk::loc_t Awk::Run::getErrorLocation () const
|
||||||
@ -925,21 +927,21 @@ const Awk::char_t* Awk::Run::getErrorMessage () const
|
|||||||
return qse_awk_rtx_geterrmsg (this->rtx);
|
return qse_awk_rtx_geterrmsg (this->rtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Awk::Run::setError (ErrorNumber code, const cstr_t* args, const loc_t* loc)
|
void Awk::Run::setError (errnum_t code, const cstr_t* args, const loc_t* loc)
|
||||||
{
|
{
|
||||||
QSE_ASSERT (this->rtx != QSE_NULL);
|
QSE_ASSERT (this->rtx != QSE_NULL);
|
||||||
qse_awk_rtx_seterror (this->rtx, (errnum_t)code, args, loc);
|
qse_awk_rtx_seterror (this->rtx, code, args, loc);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Awk::Run::setErrorWithMessage (
|
void Awk::Run::setErrorWithMessage (
|
||||||
ErrorNumber code, const char_t* msg, const loc_t* loc)
|
errnum_t code, const char_t* msg, const loc_t* loc)
|
||||||
{
|
{
|
||||||
QSE_ASSERT (this->rtx != QSE_NULL);
|
QSE_ASSERT (this->rtx != QSE_NULL);
|
||||||
|
|
||||||
errinf_t errinf;
|
errinf_t errinf;
|
||||||
|
|
||||||
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
||||||
errinf.num = (errnum_t)code;
|
errinf.num = code;
|
||||||
if (loc == QSE_NULL) errinf.loc = *loc;
|
if (loc == QSE_NULL) errinf.loc = *loc;
|
||||||
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg), msg);
|
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg), msg);
|
||||||
|
|
||||||
@ -1005,7 +1007,7 @@ Awk::Awk () : awk (QSE_NULL), functionMap (QSE_NULL), runctx (this)
|
|||||||
|
|
||||||
{
|
{
|
||||||
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
||||||
errinf.num = (errnum_t)ERR_NOERR;
|
errinf.num = QSE_AWK_ENOERR;
|
||||||
}
|
}
|
||||||
|
|
||||||
Awk::operator Awk::awk_t* () const
|
Awk::operator Awk::awk_t* () const
|
||||||
@ -1013,23 +1015,23 @@ Awk::operator Awk::awk_t* () const
|
|||||||
return this->awk;
|
return this->awk;
|
||||||
}
|
}
|
||||||
|
|
||||||
const Awk::char_t* Awk::getErrorString (ErrorNumber num) const
|
const Awk::char_t* Awk::getErrorString (errnum_t num) const
|
||||||
{
|
{
|
||||||
QSE_ASSERT (awk != QSE_NULL);
|
QSE_ASSERT (awk != QSE_NULL);
|
||||||
QSE_ASSERT (dflerrstr != QSE_NULL);
|
QSE_ASSERT (dflerrstr != QSE_NULL);
|
||||||
return dflerrstr (awk, (errnum_t)num);
|
return dflerrstr (awk, num);
|
||||||
}
|
}
|
||||||
|
|
||||||
const Awk::char_t* Awk::xerrstr (awk_t* a, errnum_t num)
|
const Awk::char_t* Awk::xerrstr (awk_t* a, errnum_t num)
|
||||||
{
|
{
|
||||||
Awk* awk = *(Awk**)QSE_XTN(a);
|
Awk* awk = *(Awk**)QSE_XTN(a);
|
||||||
return awk->getErrorString ((ErrorNumber)num);
|
return awk->getErrorString (num);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Awk::ErrorNumber Awk::getErrorNumber () const
|
Awk::errnum_t Awk::getErrorNumber () const
|
||||||
{
|
{
|
||||||
return (ErrorNumber)this->errinf.num;
|
return this->errinf.num;
|
||||||
}
|
}
|
||||||
|
|
||||||
Awk::loc_t Awk::getErrorLocation () const
|
Awk::loc_t Awk::getErrorLocation () const
|
||||||
@ -1042,28 +1044,28 @@ const Awk::char_t* Awk::getErrorMessage () const
|
|||||||
return this->errinf.msg;
|
return this->errinf.msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Awk::setError (ErrorNumber code, const cstr_t* args, const loc_t* loc)
|
void Awk::setError (errnum_t code, const cstr_t* args, const loc_t* loc)
|
||||||
{
|
{
|
||||||
if (awk != QSE_NULL)
|
if (awk != QSE_NULL)
|
||||||
{
|
{
|
||||||
qse_awk_seterror (awk, (errnum_t)code, args, loc);
|
qse_awk_seterror (awk, code, args, loc);
|
||||||
retrieveError ();
|
retrieveError ();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
||||||
errinf.num = (errnum_t)code;
|
errinf.num = code;
|
||||||
if (loc != QSE_NULL) errinf.loc = *loc;
|
if (loc != QSE_NULL) errinf.loc = *loc;
|
||||||
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg),
|
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg),
|
||||||
QSE_T("not ready to set an error message"));
|
QSE_T("not ready to set an error message"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Awk::setErrorWithMessage (ErrorNumber code, const char_t* msg, const loc_t* loc)
|
void Awk::setErrorWithMessage (errnum_t code, const char_t* msg, const loc_t* loc)
|
||||||
{
|
{
|
||||||
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
||||||
|
|
||||||
errinf.num = (errnum_t)code;
|
errinf.num = code;
|
||||||
if (loc != QSE_NULL) errinf.loc = *loc;
|
if (loc != QSE_NULL) errinf.loc = *loc;
|
||||||
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg), msg);
|
qse_strxcpy (errinf.msg, QSE_COUNTOF(errinf.msg), msg);
|
||||||
|
|
||||||
@ -1073,7 +1075,7 @@ void Awk::setErrorWithMessage (ErrorNumber code, const char_t* msg, const loc_t*
|
|||||||
void Awk::clearError ()
|
void Awk::clearError ()
|
||||||
{
|
{
|
||||||
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
QSE_MEMSET (&errinf, 0, QSE_SIZEOF(errinf));
|
||||||
errinf.num = (errnum_t)ERR_NOERR;
|
errinf.num = QSE_AWK_ENOERR;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Awk::retrieveError ()
|
void Awk::retrieveError ()
|
||||||
@ -1113,7 +1115,7 @@ int Awk::open ()
|
|||||||
awk = qse_awk_open ((qse_mmgr_t*)this, QSE_SIZEOF(xtn_t), &prm);
|
awk = qse_awk_open ((qse_mmgr_t*)this, QSE_SIZEOF(xtn_t), &prm);
|
||||||
if (awk == QSE_NULL)
|
if (awk == QSE_NULL)
|
||||||
{
|
{
|
||||||
setError (ERR_NOMEM);
|
setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1131,7 +1133,7 @@ int Awk::open ()
|
|||||||
qse_awk_close (awk);
|
qse_awk_close (awk);
|
||||||
awk = QSE_NULL;
|
awk = QSE_NULL;
|
||||||
|
|
||||||
setError (ERR_NOMEM);
|
setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1169,7 +1171,7 @@ Awk::Run* Awk::parse (Source& in, Source& out)
|
|||||||
|
|
||||||
if (&in == &Source::NONE)
|
if (&in == &Source::NONE)
|
||||||
{
|
{
|
||||||
setError (ERR_INVAL);
|
setError (QSE_AWK_EINVAL);
|
||||||
return QSE_NULL;
|
return QSE_NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1230,7 +1232,7 @@ int Awk::call (
|
|||||||
awk, QSE_SIZEOF(val_t*) * nargs);
|
awk, QSE_SIZEOF(val_t*) * nargs);
|
||||||
if (ptr == QSE_NULL)
|
if (ptr == QSE_NULL)
|
||||||
{
|
{
|
||||||
runctx.setError (ERR_NOMEM);
|
runctx.setError (QSE_AWK_ENOMEM);
|
||||||
retrieveError (&runctx);
|
retrieveError (&runctx);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -1327,7 +1329,7 @@ int Awk::dispatch_function (Run* run, const cstr_t* name)
|
|||||||
pair = qse_map_search (functionMap, name->ptr, name->len);
|
pair = qse_map_search (functionMap, name->ptr, name->len);
|
||||||
if (pair == QSE_NULL)
|
if (pair == QSE_NULL)
|
||||||
{
|
{
|
||||||
run->setError (ERR_FUNNF, name);
|
run->setError (QSE_AWK_EFUNNF, name);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1344,7 +1346,7 @@ int Awk::dispatch_function (Run* run, const cstr_t* name)
|
|||||||
args = new(run) Value[nargs];
|
args = new(run) Value[nargs];
|
||||||
if (args == QSE_NULL)
|
if (args == QSE_NULL)
|
||||||
{
|
{
|
||||||
run->setError (ERR_NOMEM);
|
run->setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1357,14 +1359,14 @@ int Awk::dispatch_function (Run* run, const cstr_t* name)
|
|||||||
val_t** ref = (val_t**)((qse_awk_val_ref_t*)v)->adr;
|
val_t** ref = (val_t**)((qse_awk_val_ref_t*)v)->adr;
|
||||||
if (args[i].setVal (run, *ref) == -1)
|
if (args[i].setVal (run, *ref) == -1)
|
||||||
{
|
{
|
||||||
run->setError (ERR_NOMEM);
|
run->setError (QSE_AWK_ENOMEM);
|
||||||
if (args != buf) delete[] args;
|
if (args != buf) delete[] args;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
if (args[i].setVal (run, v) == -1)
|
if (args[i].setVal (run, v) == -1)
|
||||||
{
|
{
|
||||||
run->setError (ERR_NOMEM);
|
run->setError (QSE_AWK_ENOMEM);
|
||||||
if (args != buf) delete[] args;
|
if (args != buf) delete[] args;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -1457,7 +1459,7 @@ int Awk::addArgument (const char_t* arg, size_t len)
|
|||||||
{
|
{
|
||||||
QSE_ASSERT (awk != QSE_NULL);
|
QSE_ASSERT (awk != QSE_NULL);
|
||||||
int n = runarg.add (awk, arg, len);
|
int n = runarg.add (awk, arg, len);
|
||||||
if (n <= -1) setError (ERR_NOMEM);
|
if (n <= -1) setError (QSE_AWK_ENOMEM);
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1495,7 +1497,7 @@ int Awk::setGlobal (int id, const Value& v)
|
|||||||
|
|
||||||
if (v.run != &runctx)
|
if (v.run != &runctx)
|
||||||
{
|
{
|
||||||
setError (ERR_INVAL);
|
setError (QSE_AWK_EINVAL);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1524,7 +1526,7 @@ int Awk::addFunction (
|
|||||||
qse_awk_alloc (awk, QSE_SIZEOF(handler));
|
qse_awk_alloc (awk, QSE_SIZEOF(handler));
|
||||||
if (tmp == QSE_NULL)
|
if (tmp == QSE_NULL)
|
||||||
{
|
{
|
||||||
setError (ERR_NOMEM);
|
setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1556,7 +1558,7 @@ int Awk::addFunction (
|
|||||||
qse_awk_delfnc (awk, name, nameLen);
|
qse_awk_delfnc (awk, name, nameLen);
|
||||||
qse_awk_free (awk, tmp);
|
qse_awk_free (awk, tmp);
|
||||||
|
|
||||||
setError (ERR_NOMEM);
|
setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: StdAwk.cpp 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: StdAwk.cpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/StdAwk.hpp>
|
#include <qse/awk/StdAwk.hpp>
|
||||||
@ -412,7 +414,7 @@ int StdAwk::addConsoleOutput (const char_t* arg, size_t len)
|
|||||||
{
|
{
|
||||||
QSE_ASSERT (awk != QSE_NULL);
|
QSE_ASSERT (awk != QSE_NULL);
|
||||||
int n = ofile.add (awk, arg, len);
|
int n = ofile.add (awk, arg, len);
|
||||||
if (n <= -1) setError (ERR_NOMEM);
|
if (n <= -1) setError (QSE_AWK_ENOMEM);
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -484,7 +486,7 @@ int StdAwk::open_console_in (Console& io)
|
|||||||
cstr_t arg;
|
cstr_t arg;
|
||||||
arg.ptr = file;
|
arg.ptr = file;
|
||||||
arg.len = qse_strlen (arg.ptr);
|
arg.len = qse_strlen (arg.ptr);
|
||||||
((Run*)io)->setError (ERR_IONMNL, &arg);
|
((Run*)io)->setError (QSE_AWK_EIONMNL, &arg);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -533,7 +535,7 @@ int StdAwk::open_console_in (Console& io)
|
|||||||
cstr_t arg;
|
cstr_t arg;
|
||||||
arg.ptr = out.u.cpldup.ptr;
|
arg.ptr = out.u.cpldup.ptr;
|
||||||
arg.len = qse_strlen (arg.ptr);
|
arg.len = qse_strlen (arg.ptr);
|
||||||
((Run*)io)->setError (ERR_IONMNL, &arg);
|
((Run*)io)->setError (QSE_AWK_EIONMNL, &arg);
|
||||||
qse_awk_rtx_free (rtx, out.u.cpldup.ptr);
|
qse_awk_rtx_free (rtx, out.u.cpldup.ptr);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -554,7 +556,7 @@ int StdAwk::open_console_in (Console& io)
|
|||||||
cstr_t arg;
|
cstr_t arg;
|
||||||
arg.ptr = file;
|
arg.ptr = file;
|
||||||
arg.len = qse_strlen (arg.ptr);
|
arg.len = qse_strlen (arg.ptr);
|
||||||
((Run*)io)->setError (ERR_OPEN, &arg);
|
((Run*)io)->setError (QSE_AWK_EOPEN, &arg);
|
||||||
qse_awk_rtx_free (rtx, out.u.cpldup.ptr);
|
qse_awk_rtx_free (rtx, out.u.cpldup.ptr);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -616,7 +618,7 @@ int StdAwk::open_console_out (Console& io)
|
|||||||
cstr_t arg;
|
cstr_t arg;
|
||||||
arg.ptr = file;
|
arg.ptr = file;
|
||||||
arg.len = qse_strlen (arg.ptr);
|
arg.len = qse_strlen (arg.ptr);
|
||||||
((Run*)io)->setError (ERR_IONMNL, &arg);
|
((Run*)io)->setError (QSE_AWK_EIONMNL, &arg);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -634,7 +636,7 @@ int StdAwk::open_console_out (Console& io)
|
|||||||
cstr_t arg;
|
cstr_t arg;
|
||||||
arg.ptr = file;
|
arg.ptr = file;
|
||||||
arg.len = qse_strlen (arg.ptr);
|
arg.len = qse_strlen (arg.ptr);
|
||||||
((Run*)io)->setError (ERR_OPEN, &arg);
|
((Run*)io)->setError (QSE_AWK_EOPEN, &arg);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -820,7 +822,7 @@ int StdAwk::SourceFile::open (Data& io)
|
|||||||
qse_cstr_t ea;
|
qse_cstr_t ea;
|
||||||
ea.ptr = name;
|
ea.ptr = name;
|
||||||
ea.len = qse_strlen(name);
|
ea.len = qse_strlen(name);
|
||||||
((Awk*)io)->setError (ERR_OPEN, &ea);
|
((Awk*)io)->setError (QSE_AWK_EOPEN, &ea);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -851,7 +853,7 @@ int StdAwk::SourceFile::open (Data& io)
|
|||||||
);
|
);
|
||||||
if (dbuf == QSE_NULL)
|
if (dbuf == QSE_NULL)
|
||||||
{
|
{
|
||||||
((Awk*)io)->setError (ERR_NOMEM);
|
((Awk*)io)->setError (QSE_AWK_ENOMEM);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -879,7 +881,7 @@ int StdAwk::SourceFile::open (Data& io)
|
|||||||
qse_cstr_t ea;
|
qse_cstr_t ea;
|
||||||
ea.ptr = file;
|
ea.ptr = file;
|
||||||
ea.len = qse_strlen(file);
|
ea.len = qse_strlen(file);
|
||||||
((Awk*)io)->setError (ERR_OPEN, &ea);
|
((Awk*)io)->setError (QSE_AWK_EOPEN, &ea);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -939,7 +941,7 @@ int StdAwk::SourceString::open (Data& io)
|
|||||||
qse_cstr_t ea;
|
qse_cstr_t ea;
|
||||||
ea.ptr = ioname;
|
ea.ptr = ioname;
|
||||||
ea.len = qse_strlen(ioname);
|
ea.len = qse_strlen(ioname);
|
||||||
((Awk*)io)->setError (ERR_OPEN, &ea);
|
((Awk*)io)->setError (QSE_AWK_EOPEN, &ea);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
io.setHandle (sio);
|
io.setHandle (sio);
|
||||||
|
@ -1,26 +1,23 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk.c 286 2009-09-14 13:29:55Z hyunghwan.chung $
|
* $Id: awk.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__BORLANDC__)
|
|
||||||
#pragma hdrstop
|
|
||||||
#define Library
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
|
||||||
QSE_IMPLEMENT_COMMON_FUNCTIONS (awk)
|
QSE_IMPLEMENT_COMMON_FUNCTIONS (awk)
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk.h 267 2009-08-25 09:50:07Z hyunghwan.chung $
|
* $Id: awk.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_AWK_H_
|
#ifndef _QSE_LIB_AWK_AWK_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: err.c 269 2009-08-26 03:03:51Z hyunghwan.chung $
|
* $Id: err.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licenawk under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: misc.h 135 2009-05-15 13:31:43Z baconevi $
|
* $Id: misc.h 135 2009-05-15 13:31:43Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_ERR_H_
|
#ifndef _QSE_LIB_AWK_ERR_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: fnc.c 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: fnc.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: fnc.h 211 2009-06-24 09:50:10Z hyunghwan.chung $
|
* $Id: fnc.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_FNC_H_
|
#ifndef _QSE_LIB_AWK_FNC_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: misc.c 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: misc.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: misc.h 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: misc.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_MISC_H_
|
#ifndef _QSE_LIB_AWK_MISC_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: parse.c 285 2009-09-10 03:05:13Z hyunghwan.chung $
|
* $Id: parse.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: parse.h 239 2009-07-18 12:02:24Z hyunghwan.chung $
|
* $Id: parse.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_PARSE_H_
|
#ifndef _QSE_LIB_AWK_PARSE_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: rec.c 255 2009-08-16 08:08:58Z hyunghwan.chung $
|
* $Id: rec.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: rio.c 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: rio.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: rio.h 270 2009-08-26 12:59:08Z hyunghwan.chung $
|
* $Id: rio.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_RIO_H_
|
#ifndef _QSE_LIB_AWK_RIO_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: run.c 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: run.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
@ -756,7 +758,7 @@ void qse_awk_rtx_stop (qse_awk_rtx_t* rtx)
|
|||||||
rtx->exit_level = EXIT_ABORT;
|
rtx->exit_level = EXIT_ABORT;
|
||||||
}
|
}
|
||||||
|
|
||||||
qse_bool_t qse_awk_rtx_shouldstop (qse_awk_rtx_t* rtx)
|
qse_bool_t qse_awk_rtx_isstopreq (qse_awk_rtx_t* rtx)
|
||||||
{
|
{
|
||||||
return (rtx->exit_level == EXIT_ABORT || rtx->awk->stopall);
|
return (rtx->exit_level == EXIT_ABORT || rtx->awk->stopall);
|
||||||
}
|
}
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: run.h 238 2009-07-17 12:42:02Z hyunghwan.chung $
|
* $Id: run.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_RUN_H_
|
#ifndef _QSE_LIB_AWK_RUN_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: std.c 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: std.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tree.c 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: tree.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tree.h 267 2009-08-25 09:50:07Z hyunghwan.chung $
|
* $Id: tree.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_TREE_H_
|
#ifndef _QSE_LIB_AWK_TREE_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: val.c 259 2009-08-20 11:28:03Z hyunghwan.chung $
|
* $Id: val.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "awk.h"
|
#include "awk.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: val.h 85 2009-02-26 10:56:12Z hyunghwan.chung $
|
* $Id: val.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_AWK_VAL_H_
|
#ifndef _QSE_LIB_AWK_VAL_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: assert.c 223 2008-06-26 06:44:41Z baconevi $
|
* $Id: assert.c 223 2008-06-26 06:44:41Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/types.h>
|
#include <qse/types.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: chr.c 204 2009-06-18 12:08:06Z hyunghwan.chung $
|
* $Id: chr.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/chr.h>
|
#include <qse/cmn/chr.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: chr_cnv.c 204 2009-06-18 12:08:06Z hyunghwan.chung $
|
* $Id: chr_cnv.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/chr.h>
|
#include <qse/cmn/chr.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: dll.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: dll.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/dll.h>
|
#include <qse/cmn/dll.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: fio.c 242 2009-07-23 13:01:52Z hyunghwan.chung $
|
* $Id: fio.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/fio.h>
|
#include <qse/cmn/fio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: lda.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: lda.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/lda.h>
|
#include <qse/cmn/lda.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: main.c 463 2008-12-09 06:52:03Z baconevi $
|
* $Id: main.c 463 2008-12-09 06:52:03Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/main.h>
|
#include <qse/cmn/main.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: map.c 248 2009-08-06 08:27:14Z hyunghwan.chung $
|
* $Id: map.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/map.h>
|
#include <qse/cmn/map.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: mem.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: mem.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/mem.h>
|
#include <qse/cmn/mem.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: mem.h 97 2009-03-10 10:39:18Z hyunghwan.chung $
|
* $Id: mem.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_CMN_MEM_H_
|
#ifndef _QSE_LIB_CMN_MEM_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: misc.c 278 2009-09-04 13:08:19Z hyunghwan.chung $
|
* $Id: misc.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/misc.h>
|
#include <qse/cmn/misc.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: opt.c 206 2009-06-21 13:33:05Z hyunghwan.chung $
|
* $Id: opt.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/opt.h>
|
#include <qse/cmn/opt.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: pio.c 276 2009-08-31 13:24:06Z hyunghwan.chung $
|
* $Id: pio.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/pio.h>
|
#include <qse/cmn/pio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: rex.c 279 2009-09-06 13:18:08Z hyunghwan.chung $
|
* $Id: rex.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/rex.h>
|
#include <qse/cmn/rex.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sio.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: sio.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/sio.h>
|
#include <qse/cmn/sio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sll.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: sll.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/sll.h>
|
#include <qse/cmn/sll.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: stdio.c 463 2008-12-09 06:52:03Z baconevi $
|
* $Id: stdio.c 463 2008-12-09 06:52:03Z baconevi $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/stdio.h>
|
#include <qse/cmn/stdio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: str_bas.c 241 2009-07-22 12:47:13Z hyunghwan.chung $
|
* $Id: str_bas.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/str.h>
|
#include <qse/cmn/str.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: str_cnv.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: str_cnv.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/str.h>
|
#include <qse/cmn/str.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: str_dyn.c 138 2009-05-17 09:35:16Z hyunghwan.chung $
|
* $Id: str_dyn.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/str.h>
|
#include <qse/cmn/str.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: str_utl.c 127 2009-05-07 13:15:04Z hyunghwan.chung $
|
* $Id: str_utl.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/str.h>
|
#include <qse/cmn/str.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: syscall.h 196 2009-06-11 07:44:44Z hyunghwan.chung $
|
* $Id: syscall.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_CMN_SYSCALL_H_
|
#ifndef _QSE_LIB_CMN_SYSCALL_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: time.c 241 2009-07-22 12:47:13Z hyunghwan.chung $
|
* $Id: time.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/time.h>
|
#include <qse/cmn/time.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tio.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: tio.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/tio.h>
|
#include <qse/cmn/tio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tio_get.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: tio_get.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/tio.h>
|
#include <qse/cmn/tio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: tio_put.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
* $Id: tio_put.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/cmn/tio.h>
|
#include <qse/cmn/tio.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: Sed.cpp 280 2009-09-07 13:34:49Z hyunghwan.chung $
|
* $Id: Sed.cpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/sed/Sed.hpp>
|
#include <qse/sed/Sed.hpp>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: StdSed.cpp 235 2009-07-15 10:43:31Z hyunghwan.chung $
|
* $Id: StdSed.cpp 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/sed/StdSed.hpp>
|
#include <qse/sed/StdSed.hpp>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: err.c 269 2009-08-26 03:03:51Z hyunghwan.chung $
|
* $Id: err.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sed.h"
|
#include "sed.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sed.c 285 2009-09-10 03:05:13Z hyunghwan.chung $
|
* $Id: sed.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sed.h"
|
#include "sed.h"
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: sed.h 277 2009-09-02 12:55:55Z hyunghwan.chung $
|
* $Id: sed.h 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_SED_SED_H_
|
#ifndef _QSE_LIB_SED_SED_H_
|
||||||
|
@ -1,19 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/utl/tgp.h>
|
#include <qse/utl/tgp.h>
|
||||||
|
@ -1,19 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
|
||||||
|
|
||||||
Licentgp under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _QSE_LIB_UTL_TGP_H_
|
#ifndef _QSE_LIB_UTL_TGP_H_
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk01.c 236 2009-07-16 08:27:53Z hyunghwan.chung $
|
* $Id: awk01.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/awk.h>
|
#include <qse/awk/awk.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk02.c 236 2009-07-16 08:27:53Z hyunghwan.chung $
|
* $Id: awk02.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/awk.h>
|
#include <qse/awk/awk.h>
|
||||||
|
@ -1,19 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: awk03.c 195 2009-06-10 13:18:25Z hyunghwan.chung $
|
* $Id: awk03.c 287 2009-09-15 10:01:02Z hyunghwan.chung $
|
||||||
*
|
*
|
||||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||||
|
This file is part of QSE.
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
QSE is free software: you can redistribute it and/or modify
|
||||||
you may not use this file except in compliance with the License.
|
it under the terms of the GNU Lesser General Public License as
|
||||||
You may obtain a copy of the License at
|
published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
QSE is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Lesser General Public License for more details.
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
You should have received a copy of the GNU Lesser General Public
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <qse/awk/awk.h>
|
#include <qse/awk/awk.h>
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user