SourceForge.net OOEU documentation

OOEU documentation
Table of Contents

Introduction

  Object Oriented Euphoria v1.9.0 
 based on RDS Euphoria 2.5 PD interpreter
 by Matt Lewis 


LICENSE:
This code is released as freeware, and you may use it however you like.
However, you must give RDS and Matt Lewis credit for the original source.
You may modify any code, so long as you do not take credit for the original
source.

DISCLAIMER:
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
OR CONSEQUENTIAL DAMGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFIT; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
Thanks to RDS for releasing the PD version of the Euphoria interpreter.

Object Euphoria adds object oriented capabilities to Euphoria. The goal of this project is to accomplish interesting and useful enhancements to the Euphoria front end, without having to change anything in the back end (or at least as little as possible). This interpreter outputs standard RDS Intermediary Language (IL) code that could in theory be run by the RDS optimized Euphoria back end. It can also preprocess code to allow an application originally coded in Object Euphoria to be preprocessed, interpreted, bound and compiled using the RDS executables. (There are exceptions to this, listed under RDS Incompatible Features below.)

As-is, this code allows you to use some object oriented techniques with Euphoria, without the added overhead or clumsy syntax that an added Object Oriented library requires. You may also create bound or shrouded applications from your code without requiring the RDS binder.

The source versions of OOEU require Euphoria v2.5. The binary versions are self-contained, although you may need the standard libraries distributed by RDS.


Table of Contents

Topic

Description

IndexAlphabetical list of all items.
Binder and Shrouder FormatsHow are shrouded files saved?
Binding and ShroudingStandalone executables
CastingUsing data in Object Oriented ways
Change LogHistory
Class SpecificationHow to declare a class
Command Line OptionsUsing the features of OOEU
Construction and DestructionInitializing and destroying objects
DecorationHow does OOEU manage naming conflicts?
DisassemblyExamining IL code
Dot notationUsing Object Oriented Features
EmbeddingUsing OOEU in applications
Getting StartedWhat should I do?
InheritanceDeriving classes from other classes
Known BugsProblems and issues that haven't been fixed
PreprocessingUsing OOEU with RDS Eu
RDS Incompatible Featureseval, var_id, etc
ScopeClass scopes
TODOWhat's in store for the future of OOEU (maybe)
Tracing APIOOEU's debugging features
Tracing ModuleUsing the included debugger

Index

Binder and Shrouder Formats
Binding and Shrouding
Casting
Change Log
Class Specification
cleanup_debugger [proc]
clear_env [proc]
Command Line Options
Construction and Destruction
continue [keyword]
Decoration
default_goto [proc]
Disassembly
Dot notation
do_eval [func]
dump_vars [func]
Embedding
embed_routine [func]
eval [func]
eval_error [func]
find_from [func]
Getting Started
get_current_env [func]
get_eval_err [func]
goto [keyword]
illegal_builtin [proc]
Inheritance
is_goto [func]
Known Bugs
match_from [func]
new_env [func]
Pass by reference
Preprocessing
RDS Incompatible Features
read_var [func]
Scope
strict_goto [keyword]
switch_env [proc]
TODO
Tracing API
Tracing Module
Using Gotos
var_id [func]
write_var [proc]