sdlang

SDLang-D v0.8.2: Library for parsing SDL (Simple Declarative Language).

Import this module to use SDLang-D as a library.

This should work with DMD 2.061 and up.

Homepage: http://github.com/Abscissa/SDLang-D API: http://semitwist.com/sdlang-d-api SDL: http://sdl.ikayzo.org/display/SDL/Language+Guide

Members

Aliases

Value (from sdlang_.token)
alias Value = Algebraic!(ValueTypes) via public import sdlang_.token : Value, Token, DateTimeFrac, DateTimeFracUnknownZone;
Undocumented in source.

Classes

SDLangException (from sdlang_.exception)
class SDLangException via public import sdlang_.exception : SDLangException;
Undocumented in source.
Tag (from sdlang_.ast)
class Tag via public import sdlang_.ast : Attribute, Tag;
Undocumented in source.

Functions

doLex
void doLex(string filename)
Undocumented in source. Be warned that the author may not have intended to support it.
doParse
void doParse(string filename)
Undocumented in source. Be warned that the author may not have intended to support it.
doToSDL
void doToSDL(string filename)
Undocumented in source. Be warned that the author may not have intended to support it.
main
void main()
Undocumented in source. Be warned that the author may not have intended to support it.
main
int main(string[] args)
Undocumented in source. Be warned that the author may not have intended to support it.
parseFile (from sdlang_.parser)
Tag parseFile(string filename) via public import sdlang_.parser : parseFile, parseSource;

Returns root tag

parseSource (from sdlang_.parser)
Tag parseSource(string source, string filename) via public import sdlang_.parser : parseFile, parseSource;

Returns root tag

Manifest constants

sdlangVersion (from sdlang_.util)
enum sdlangVersion; via public import sdlang_.util : sdlangVersion, Location;
Undocumented in source.

Structs

Attribute (from sdlang_.ast)
struct Attribute via public import sdlang_.ast : Attribute, Tag;
Undocumented in source.
DateTimeFrac (from sdlang_.token)
struct DateTimeFrac via public import sdlang_.token : Value, Token, DateTimeFrac, DateTimeFracUnknownZone;

DateTime doesn't support milliseconds, but SDL's "Date Time" type does. So this is needed for any SDL "Date Time" that doesn't include a time zone.

DateTimeFracUnknownZone (from sdlang_.token)
struct DateTimeFracUnknownZone via public import sdlang_.token : Value, Token, DateTimeFrac, DateTimeFracUnknownZone;

If a "Date Time" literal in the SDL file has a time zone that's not found in your system, you get one of these instead of a SysTime. (Because it's impossible to indicate "unknown time zone" with 'std.datetime.TimeZone'.)

Location (from sdlang_.util)
struct Location via public import sdlang_.util : sdlangVersion, Location;
Undocumented in source.
Token (from sdlang_.token)
struct Token via public import sdlang_.token : Value, Token, DateTimeFrac, DateTimeFracUnknownZone;

This only represents terminals. Nonterminals aren't constructed since the AST is directly built during parsing.

Meta

Authors

Nick Sabalausky ("Abscissa") http://semitwist.com/contact