Parent Directory
|
Revision Log
Links to HEAD: | (view) (annotate) |
Sticky Revision: |
Added monomorph mark for class types, either "frozen" or "invariant". First (simple) conformance check for monomorphic types.
Creation of CAT_mono branch to implement variant/invariant proposal
Added `class_name' so that one can get the class name corresponding to the CLICKABLE_AST node when it represents a class. (similar to what we have with `feature_name'.
some changes to make use of the new ID_AS behavior
made old and new HASH_TABLE compatible added some catcall detection and prevention features to HASH_TABLE changed ID_AS not to inherit form STRING but have a name_id which is an id into the names heap switched compiler from the obsolete HASH_TABLE to the normal HASH_TABLE of base
moved libraries from the compiler into the framework
Moved trunk/Src/bench/Eiffel to trunk/Src/Eiffel.
Moved from Src/common/parser to Src/bench/Eiffel/parser.
Fixed mixing paranthesis in indexing clause for the licensing. Added missing license reference in newly created Eiffel classes.
Removed compiler specific routines for now `has_like', `has_formal_generic' and `is_loose'. Removed `actual_type' as this is not necessary anymore for the compiler, we use a factory to get TYPE_A instances. Cosmetics.
Implementation of labeled tuples with a limitation which is that the identifier list is reduced to only one element, as it is causing the grammar to be too difficult.
Fixed a bug of `first_token' and `last_token' in TYPE_AS and all its descendants which didn't take surrounding "{"and "}" into account.
1. Added `first_token' and `last_token' in AST_EIFFEL and implemented all needed descendant versions. 2. Changed text modification from character-based to token-based.
Added text of the GPL license to all classes of the compiler.
1.Added complete_start_location and complete_end_location to give the pricise position of an AST node. And changed start_location/end_location to call the above 2 features. 2. Added text modification facility into AST nodes.
Roundtrip facility added.
Fixed bug where end_location of actual generics was not properly recorded, we recorded the end_location of the last actual generic parameter, thus causing some errors with positioning and code that actually modify the class text. In the process created a new class TYPE_LIST_AS to replace EIFFEL_LIST [TYPE_AS] which record the position of `[' and `]' properly.
Refactoring and merging of the 2 sets of _AS nodes we had for the compiler and the others (CodeDom, Build). Now we have only one set and visitors to do domain specific processing of an Eiffel class. However due to some complexity in the compiler, the `compiler_override' and `types' subcluster are dupplicated in the compiler (for the override it is not too bad, but for types we should not have this duplication which wil hopfully be fixed in the future).
Adapted to change of the parsing which does not allow anymore `reference X' syntax (removed after EMCA discussion)
Renamed EIFFEL_TYPE to TYPE_AS so that we can use the generated eiffel classes from $EIFFEL_SRC/common/parser/parser.
New way to create CLASS_TYPE (no more special derivation for expanded or separate). Refactored factory for agent creation.
Replace !! with create keyword.
Replace clone (string) with make_from_string.
Abstract syntax elements that makes en Eiffel tree representing a given Eiffel code. This Eiffel tree implements the Visitor partern.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.23 |