rspc
library
Classes
-
ArgInfo
-
Parse the information of the arguments.
-
Compiler
-
The RSP compiler
-
ControlTag
-
A skeletal class for implementing control tags, such as IfTag and WhileTag.
-
DartTag
-
The dart tag.
-
ElseTag
-
The else tag.
-
ForTag
-
The for tag. There are two formats:
-
ForwardTag
-
The forward tag. There are two formats:
-
The header tag to generate HTTP response headers.
-
IfTag
-
The if tag.
-
IncludeTag
-
The include tag. There are two formats:
-
JsonJsTag
-
The json-js tag. It generates a JavaScript object by converting
the given Dart expression into a JSON object.
-
JsonTag
-
The json tag. It generates a JavaScript object by converting
the given Dart expression into a JSON object.
-
PageTag
-
The page tag.
-
SimpleTag
-
A tag simplifies the implementation of simple tags. For example,
-
SoloTag
-
Similar to SimpleTag, but it doesn't parse the data following
the tag. It is output's job, so it can be any syntax you'd like.
-
Tag
-
A tag.
-
TagContext
-
The tag execution context.
-
VarTag
-
The var tag. It defines a variable or an argument passed to IncludeTag
or ForwardTag
-
WhileTag
-
The while tag.
Properties
-
tags
↔ Map<String, Tag>
-
A map of tags that RSP compiler uses to handle the tags.
getter/setter pair
Functions
-
build(List<String> arguments, {String filenameMapper(String source)?, Encoding encoding = utf8, List<String>? imports})
→ Future
-
Compile changed RSP files. This method shall be called within build.dart,
with the arguments passed to
main()
as its arguments
.
-
compile(String source, IOSink out, {String? sourceName, String? destinationName, Encoding encoding = utf8, bool verbose = false, bool lineNumber = false, List<String>? imports})
→ void
-
Compiles the given
source
RSP document to the given output stream out
.
Notice that the caller has to close the output stream by himself.
-
compileFile(String sourceName, {String? destinationName, bool verbose = false, bool newer = false, bool lineNumber = false, Encoding encoding = utf8, List<String>? imports, void onCompile(String source, {bool skipped})?})
→ Future<bool>
-
Compiles the RSP document of the given
sourceName
and write the result to
the file of given destinationName
.
-
isEL(String data)
→ bool
-
Test if the given value is enclosed with
[= ]
.
If null, false is returned.
-
isValidVarCharCode(int cc, bool firstChar)
→ bool
-
Test if the given character can be used in a variable name.
-
main(List<String> arguments)
→ Future
-
The entry point of RSP compiler.
-
outMap(TagContext tc, Map<String, String> map)
→ void
-
Output the given map to the generated Dart file.
It will generate something like the following to the Dart file:
-
outText(TagContext tc, String text, [int? line])
→ void
-
Output the given text to the generated Dart file.
It will generate something like the following to the Dart file:
-
parseArgs(String data)
→ Map<String, String>
-
Parses the given string into a map of arguments.
It assumes the string is in the format of:
arg0="value0" arg1="value1"
-
toEL(String? data, {bool direct = true})
→ String
-
Converts the given value to a valid Dart statement.