Rosetta::Model

Rosetta::Model is an abstract syntax tree for the Rosetta D language.
Download

Rosetta::Model Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Darren R. Duncan
  • Publisher web site:
  • http://search.cpan.org/~duncand/CGI-Portable-0.51/lib/CGI/Portable/AppMultiScreen.pm

Rosetta::Model Tags


Rosetta::Model Description

Rosetta::Model is an abstract syntax tree for the Rosetta D language. Rosetta::Model is an abstract syntax tree for the Rosetta D language.INTERFACEThe interface of Rosetta::Model is entirely object-oriented; you use it by creating objects from its member classes, usually invoking new() on the appropriate class name, and then invoking methods on those objects. All of their attributes are private, so you must use accessor methods. Rosetta::Model does not declare any subroutines or export such.The usual way that Rosetta::Model indicates a failure is to throw an exception; most often this is due to invalid input. If an invoked routine simply returns, you can assume that it has succeeded, even if the return value is undefined.Rosetta::Model's input validation is performed over 2 main phases, which are referred to as "immediate" and "deferred". The immediate validations are performed at the moment the user tries to set the input, and input that fails immediate evaluation will not be set at all. The scope of immediate validation is kept to the minimum possible, and is essentially just concerned with the well-formedness of the input, such as that mandatory constructor arguments are provided and that they are of the correct container type (eg, hash vs array). The deferred validations are performed on demand at some time after the input has been set, and could potentially never be performed at all. They validate everything except well-formedness, such as that Rosetta::Model Nodes are arranged correctly depending on their types, that their attributes have reasonable values, and that attributes or Nodes are not missing. The deferred validations, which can be arbitrarily complex, make up the bulk of the Rosetta::Model code, and these could potentially be extended by third party add-ons.The Rosetta::Model::Document ClassA Document object is a simple container which stores data to be used or displayed by your program. It is analagous to a simplified version of the "Document" interface defined in the XML DOM spec; it exists as a container in which Node objects live. The Document class is pure and deterministic, such that all of its class and object methods will each return the same result and/or make the same change to an object when the permutation of its arguments and any invocant object's attributes is identical; they do not interact with the outside environment at all. Requirements: · Perl


Rosetta::Model Related Software