/[eiffelstudio]/branches/CAT_mono/Src/framework/parser/AST/factory/ast_factory.e
ViewVC logotype

Log of /branches/CAT_mono/Src/framework/parser/AST/factory/ast_factory.e

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Revision:

Revision 69650 - (view) (annotate) - [select for diffs]
Modified Tue Jul 24 17:18:14 2007 UTC (12 years, 4 months ago) by juliant
File length: 53039 byte(s)
Diff to previous 69629
Added monomorph mark for class types, either "frozen" or "invariant".
First (simple) conformance check for monomorphic types.

Revision 69629 - (view) (annotate) - [select for diffs]
Modified Mon Jul 23 21:36:18 2007 UTC (12 years, 4 months ago) by manus
File length: 52675 byte(s)
Diff to previous 67856
Creation of CAT_mono branch to implement variant/invariant proposal

Revision 67856 - (view) (annotate) - [select for diffs]
Modified Mon Apr 16 19:22:30 2007 UTC (12 years, 7 months ago) by martins
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 52675 byte(s)
Diff to previous 67302
Cosmetics: I replaced double (or more) lines in the source code by single lines automatically. So you might hit anomalies. But I hope they are just a few exceptions.

Revision 67302 - (view) (annotate) - [select for diffs]
Modified Thu Mar 15 00:10:19 2007 UTC (12 years, 9 months ago) by manus
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 52676 byte(s)
Diff to previous 67227
Fixed `first_token' and `last_token' of CONSTRAINING_TYPE_AS to do the right thing.
Updated invariant of CONSTRAINING_TYPE_AS to ensure that `type' will always be not Void
  and thus updated the AST_FACTORY code for creating CONSTRAINING_TYPE_AS nodes.


Revision 67227 - (view) (annotate) - [select for diffs]
Modified Tue Mar 13 01:32:16 2007 UTC (12 years, 9 months ago) by martins
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 52639 byte(s)
Diff to previous 67218
Support for multi constraint generics:
- Central new class is TYPE_SET_A: It provides features for type checking and feature lookup.
  (the TYPE_A interface is not perfectly complete until now)
- Added EXTENDED_TYPE_A: It basically encapsulates a type and a feature renaming.
- Changed parser to accept the new syntax.
- Adapted validity checks for generics to reflect the new rules.
- Changed AST_FEATURE_CHECKER_GENERATOR in particular `process_call' and its siblings
  to select the so called `multi_constrained_static'. This is the actual static type
  of the target. It is done for each access on a multi constraint generic.
- Added error classes VTGC*, VTGD* and VTMC*.
- Changed code which called `constrained_type' feature to make it capable
  of handling multi constraints. This is in most cases achieved through handling these cases
  explicitly: Autocompletion, query language and debugger are not yet adapted and don't work
  properly in the presence of multi constraint formals.
- Changed AST_DECORATED_OUTPUT_STRATEGY and the like to pretty print the multi constraints correctly.

Support for recursive formals:
- I added a second pass AST_FORMAL_GENERICS_PASS2 which handles the registration of suppliers
  and transformation of the types into the right class (formal or class type).

The rest of the changes are targeted to either one of these.


Revision 67218 - (view) (annotate) - [select for diffs]
Modified Mon Mar 12 22:36:45 2007 UTC (12 years, 9 months ago) by manus
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 51430 byte(s)
Diff to previous 67164
Fixed bug#12204 where an instance of INLINE_AGENT_CREATION_AS created
  by just the AST_COMPILER_FACTORY would fail because in this factory
  no KEYWORD_AS were created (and thus violating the precondition in the
  creation of the inline agent). Now there is no such precondition and I've
  updated first_token accordingly.
Added some checks to prevent precondition violation in the AST_FACTORY.


Revision 67164 - (view) (annotate) - [select for diffs]
Modified Fri Mar 9 17:25:05 2007 UTC (12 years, 9 months ago) by manus
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 51369 byte(s)
Diff to previous 66895
Added check against creating a NONE_TYPE_AS instance without an ID_AS.


Revision 66895 - (view) (annotate) - [select for diffs]
Modified Sun Feb 25 17:11:57 2007 UTC (12 years, 9 months ago) by manus
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 51340 byte(s)
Diff to previous 65174
Support for FreeELKS:
- Added byte code for `floor' and `ceiling' operation on real types.
- Made `c_tagged_out' take an EIF_REFERENCE rather than an EIF_OBJECT, updated
  all C code using it accordingly and ANY/ISE_RUNTIME.
- Added `eif_built_in.h' to keep all macros used for external "built_in' features
  not implemented with Eiffel code.
- Added BUILT_IN_AS node for representing external "built_in' features:
  * when a built_in routine is found, we look in $ISE_EIFFEL/studio/built_ins to
    see if it has a corresponding implementation and the FEATURE_I/STD_BYTE_CODE
	is generated from the implementation. Otherwise we consider it as a special
	C routines.
  * In the formatters, we show the actual code of the implementation and not the
    external body, the same for debugging.
- Partial fix for Precursor call when call is made in an expanded class, the ancestor
  version might have non-expanded arguments and return type (e.g. like Current).
- Changed CLASS_TYPE for basic types so that `type_i' is a CL_TYPE_I and not
  a BASIC_I. It solves issues when you have code defined in basic types which
  would not be properly generated. Since it would be generated as if it was a
  normal expanded type but the types where still EIF_XXX instead of EIF_REFERENCE.
  This was needed for FreeELKS since now we have implementation in the basic types.
  Added some queries to CLASS_TYPE to avoid accessing `type' to get the information
  since sometime we still want to know that we are in basic types. Added `basic_type'
  to be used when it is a basic type. It has mostly an implication with .NET code
  generation.
- Updated debugger so that one can debug all features but attributes, deferred and
  constants.


Revision 65174 - (view) (annotate) - [select for diffs]
Modified Tue Nov 21 13:18:36 2006 UTC (13 years ago) by jasonw
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 51131 byte(s)
Diff to previous 65166
Fixed a bug that caused roundtrip parse could not handle integer denoted character correctly.

Revision 65166 - (view) (annotate) - [select for diffs]
Modified Tue Nov 21 01:38:24 2006 UTC (13 years ago) by patrickr
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 49985 byte(s)
Diff to previous 64590
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

Revision 64590 - (view) (annotate) - [select for diffs]
Modified Wed Oct 25 17:04:38 2006 UTC (13 years, 1 month ago) by juliant
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 49855 byte(s)
Diff to previous 64549
code cleanup

Revision 64549 - (view) (annotate) - [select for diffs]
Modified Tue Oct 24 20:34:59 2006 UTC (13 years, 1 month ago) by juliant
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 49724 byte(s)
Diff to previous 64544
fix so that encoded characters with larger value than 8bit are handled properly

Revision 64544 - (view) (annotate) - [select for diffs]
Modified Tue Oct 24 17:49:38 2006 UTC (13 years, 1 month ago) by juliant
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 49692 byte(s)
Diff to previous 64520
added parsing of octal/binary encoded integers
added parsing of hexadecimal/octal/binary encoded manifest characters

Revision 64520 - (view) (annotate) - [select for diffs]
Modified Mon Oct 23 18:54:55 2006 UTC (13 years, 1 month ago) by patrickr
Original Path: trunk/Src/framework/parser/AST/factory/ast_factory.e
File length: 47100 byte(s)
Diff to previous 63519
moved libraries from the compiler into the framework

Revision 63519 - (view) (annotate) - [select for diffs]
Modified Tue Sep 12 21:11:57 2006 UTC (13 years, 3 months ago) by manus
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 47100 byte(s)
Diff to previous 63360
Fixed bug#5373 by improving the error message when you have an underflow or an overflow
  in the value of an integer/natural.


Revision 63360 - (view) (annotate) - [select for diffs]
Modified Thu Sep 7 22:19:31 2006 UTC (13 years, 3 months ago) by manus
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 47084 byte(s)
Diff to previous 60616
No need for `has_externals' query. It was there to force a freeze when `melt_all' was called.
  But now we fixed `melt_all' to trigger a freeze when one of the routine to be melted is
  an external feature.


Revision 60616 - (view) (annotate) - [select for diffs]
Modified Tue Jun 27 18:02:28 2006 UTC (13 years, 5 months ago) by konradm
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 47101 byte(s)
Diff to previous 59675
- Support for agents on attributes and externals
- Support for inline agents.
- No freeze anymore when creating a new agent.
- Removed bug in Named tuples

Revision 59675 - (view) (annotate) - [select for diffs]
Modified Tue Jun 13 11:00:22 2006 UTC (13 years, 6 months ago) by alexk
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 46887 byte(s)
Diff to previous 59276
Allowed to avoid the keyword 'is' in the feature declaration and to use an equal sign in the constant attribute declaration.

Revision 59276 - (view) (annotate) - [select for diffs]
Modified Tue May 30 18:04:29 2006 UTC (13 years, 6 months ago) by konradm
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 46878 byte(s)
Diff to previous 58461
added support for identifier lists in named tuples, i.e: TUPLE [x1, x2: INTEGER; y1: STRING]

Revision 58461 - (view) (annotate) - [select for diffs]
Modified Tue Apr 25 23:17:31 2006 UTC (13 years, 7 months ago) by jasonw
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 46896 byte(s)
Diff to previous 58325
Fixed a bug in AST_FACTORY where we increased index for match_list every time we saw a line pragma, but this will cause wrong text retrieval from match_list because the wrong index. So what I've done here is to make `new_line_pragma' just return a new BREAK_AS object, and do nothing about match_list because later, the whole break including current line pragma will be taken care of as a whole BREAK_AS by `create_break_as' and match_list index is maintained there.

Revision 58325 - (view) (annotate) - [select for diffs]
Modified Thu Apr 20 16:05:16 2006 UTC (13 years, 7 months ago) by manus
Original Path: trunk/Src/Eiffel/parser/AST/factory/ast_factory.e
File length: 47009 byte(s)
Diff to previous 58218
Moved trunk/Src/bench/Eiffel to trunk/Src/Eiffel.

Revision 58218 - (view) (annotate) - [select for diffs]
Modified Mon Apr 17 15:54:40 2006 UTC (13 years, 7 months ago) by manus
Original Path: trunk/Src/bench/Eiffel/parser/AST/factory/ast_factory.e
File length: 47009 byte(s)
Diff to previous 58026
Moved from Src/common/parser to Src/bench/Eiffel/parser.

Revision 58026 - (view) (annotate) - [select for diffs]
Modified Wed Apr 5 06:55:57 2006 UTC (13 years, 8 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 47009 byte(s)
Diff to previous 57651
Fixed mixing paranthesis in indexing clause for the licensing.
Added missing license reference in newly created Eiffel classes.


Revision 57651 - (view) (annotate) - [select for diffs]
Modified Thu Mar 23 07:58:22 2006 UTC (13 years, 8 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46999 byte(s)
Diff to previous 57612
Removed non-used locals.


Revision 57612 - (view) (annotate) - [select for diffs]
Modified Wed Mar 22 23:45:32 2006 UTC (13 years, 8 months ago) by raphaels
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 47059 byte(s)
Diff to previous 57602
Fixed implementation of `new_line_pragma'. We need to generate something otherwise line pragma will not be correctly inserted in the match list.

Revision 57602 - (view) (annotate) - [select for diffs]
Modified Wed Mar 22 18:57:51 2006 UTC (13 years, 8 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46851 byte(s)
Diff to previous 57546
1. Removed some useless test code in ast_factory.
2. Fixed a bug in EXPORT_CLAUSE_AS which created a new object every time we query `exports'. This caused some problems in AST_PARENT_C_GENERATOR.
3. Rewrote `is_equivalent' in INHERIT_CLAUSE_AS.

Revision 57546 - (view) (annotate) - [select for diffs]
Modified Mon Mar 20 21:37:59 2006 UTC (13 years, 8 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46966 byte(s)
Diff to previous 57499
1. Added line pragma analysis in eiffel.l.
2. Optimized parser a little bit: Found some places where we do unnecessary roundtrip string manipulations. So I removed them.
3. Refactored `internal_parameters' and `parameters' in ACCESS_FEAT_AS and its descendants. Refactored INHERIT_CLAUSE_AS and its descendants.

Revision 57499 - (view) (annotate) - [select for diffs]
Modified Thu Mar 16 23:48:31 2006 UTC (13 years, 8 months ago) by raphaels
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46734 byte(s)
Diff to previous 57378
Fixed `new_line_pragma' so it does nothing, it will be redefined in descendants instead.

Revision 57378 - (view) (annotate) - [select for diffs]
Modified Wed Mar 8 23:44:59 2006 UTC (13 years, 9 months ago) by raphaels
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46818 byte(s)
Diff to previous 57370
Added `new_line_pragma' used for line pragma processing.

Revision 57370 - (view) (annotate) - [select for diffs]
Modified Tue Mar 7 23:51:17 2006 UTC (13 years, 9 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46553 byte(s)
Diff to previous 57172
Removed processing of TYPE_A from visitor, since this type in not an AST_EIFFEL
  descendant anymore, it is compiler specific.
Refactored creation of INTEGER_AS/REAL_AS node and validity. For the moment, the validity cannot
  be done when doing a standalone parsing, so we added `validate_integer_real_type' which is
  redefined in the compiler to do the actual check, but in AST_FACTORY it does nothing by default.


Revision 57172 - (view) (annotate) - [select for diffs]
Modified Mon Feb 27 05:27:13 2006 UTC (13 years, 9 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46874 byte(s)
Diff to previous 57156
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.


Revision 57156 - (view) (annotate) - [select for diffs]
Modified Sat Feb 25 02:30:39 2006 UTC (13 years, 9 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46348 byte(s)
Diff to previous 56972
Decoupled associations between AST classes and EIFFEL_SCANNER.

Revision 56972 - (view) (annotate) - [select for diffs]
Modified Wed Feb 8 20:27:15 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46358 byte(s)
Diff to previous 56844
1. Removed PRE_POST_AS class.
2. Removed all dependent usage of PRE_POST_AS.

Revision 56844 - (view) (annotate) - [select for diffs]
Modified Thu Feb 2 22:44:17 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46620 byte(s)
Diff to previous 56807
Fixed a bug which caused eweasel test vrrr001 fail. It is because if there is no local declaration after "local" keyword, we should create an empty list of local declaration to preserve the original behavior.

Revision 56807 - (view) (annotate) - [select for diffs]
Modified Mon Jan 30 21:23:20 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46591 byte(s)
Diff to previous 56740
1. Changed needed EIFFEL_LIST [AST_EIFFEL] to its own type to facilitate roundtrip usage.
2. Added ERT_PARENT_LIST_MODIFIER to merge text of parent list from two classes.

Revision 56740 - (view) (annotate) - [select for diffs]
Modified Thu Jan 26 18:12:17 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 44598 byte(s)
Diff to previous 56712
1. Fixed a bug in `last_token' of INFIX_PREFIX_AS which returned a invalid token in roundtrip mode.
2. Fixed a bug in roundtrip parser which couldn't deal with the situation of non-empty client list with empty feature name list in export clause such as:
          export
              {STRING} -- No feature here
          end
3. Cosmetic changes in CLASS_AS

Revision 56712 - (view) (annotate) - [select for diffs]
Modified Wed Jan 25 16:54:03 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 44612 byte(s)
Diff to previous 56644
Finished match_list merging:
1. AST_ROUNDTRIP_FACTORY will generate match_list during parsing, while AST_ROUNDTRIP_LIGHT_FACTORY will not  generate match_list. You can use EIFFEL_ROUNDTRIP_SCANNER with AST_ROUNDTRIP SCANNER_FACTORY to generate match_list separately.

2. AST_ROUNDTRIP_COMPILER_FACTORY will generate match_list during parsing AST_ROUNDTRIP_COMPILER_LIGHT_FACTORY will not generte match_list.

Revision 56644 - (view) (annotate) - [select for diffs]
Modified Fri Jan 20 20:25:40 2006 UTC (13 years, 10 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 45643 byte(s)
Diff to previous 56536
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.

Revision 56536 - (view) (annotate) - [select for diffs]
Modified Tue Jan 17 01:53:39 2006 UTC (13 years, 10 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46885 byte(s)
Diff to previous 56499
Added text of the GPL license to all classes of the compiler. 


Revision 56499 - (view) (annotate) - [select for diffs]
Modified Thu Jan 12 18:02:52 2006 UTC (13 years, 11 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 46159 byte(s)
Diff to previous 56473
1.Added AST merge facility.
2.Added item removal functions in EIFFEL_LIST and PARENT_AS.

Revision 56473 - (view) (annotate) - [select for diffs]
Modified Mon Jan 9 23:58:36 2006 UTC (13 years, 11 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 45812 byte(s)
Diff to previous 56181
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.

Revision 56181 - (view) (annotate) - [select for diffs]
Modified Thu Dec 15 19:07:14 2005 UTC (13 years, 11 months ago) by jasonw
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 44808 byte(s)
Diff to previous 55895
Roundtrip facility added.

Revision 55895 - (view) (annotate) - [select for diffs]
Modified Sat Nov 26 18:34:02 2005 UTC (14 years ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30225 byte(s)
Diff to previous 53973
Removed restriction on synonyms that disallowed to have indexing clause for them.

Revision 53973 - (view) (annotate) - [select for diffs]
Modified Tue Aug 2 11:32:08 2005 UTC (14 years, 4 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30264 byte(s)
Diff to previous 53246
Introduced a location for the "frozen" keyword in feature name as otherwise
it is not shown in feature basic text view.


Revision 53246 - (view) (annotate) - [select for diffs]
Modified Sat Jul 9 20:29:03 2005 UTC (14 years, 5 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30340 byte(s)
Diff to previous 52923
Reintroduced `fbody_pos' as `body_start_position' is not properly computed
 in ROUTINE_AS, because if before the first instruction of the routine you
 have comments, they are taken into account when displaying the feature header
 comments when it should not.


Revision 52923 - (view) (annotate) - [select for diffs]
Modified Sat Jul 2 20:11:12 2005 UTC (14 years, 5 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30297 byte(s)
Diff to previous 52536
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.


Revision 52536 - (view) (annotate) - [select for diffs]
Modified Thu Jun 23 14:10:33 2005 UTC (14 years, 5 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30324 byte(s)
Diff to previous 52158
Associated location information with infix/prefix keywords to fix bug #4967
when basic text view in feature tool does not show infix/prefix keyword.


Revision 52158 - (view) (annotate) - [select for diffs]
Modified Wed Jun 15 00:09:02 2005 UTC (14 years, 6 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30286 byte(s)
Diff to previous 52064
Removed fbody_pos, it is now a query computed in ROUTINE_AS rather than being stored.
Added `next_pos' passed to `new_feature_as' to create a new FEATURE_AS node:
  `next_pos' records the position of the next thing after a found FEATURE_AS.
  It is mostly useful to extract comments of an attribute.


Revision 52064 - (view) (annotate) - [select for diffs]
Modified Mon Jun 13 17:01:50 2005 UTC (14 years, 6 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30272 byte(s)
Diff to previous 51814
Added an assigner call instruction.


Revision 51814 - (view) (annotate) - [select for diffs]
Modified Tue Jun 7 09:53:36 2005 UTC (14 years, 6 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30081 byte(s)
Diff to previous 51516
Supported declaration of assigner command.


Revision 51516 - (view) (annotate) - [select for diffs]
Modified Tue May 31 12:27:39 2005 UTC (14 years, 6 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 30068 byte(s)
Diff to previous 50949
Added a bracket expression AST node.


Revision 50949 - (view) (annotate) - [select for diffs]
Modified Wed May 11 05:46:32 2005 UTC (14 years, 7 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 29870 byte(s)
Diff to previous 50885
Updated to new signature of INTEGER_AS/INTEGER_CONSTANT and REAL_AS which
  now take TYPE_AS instead of TYPE_A.


Revision 50885 - (view) (annotate) - [select for diffs]
Modified Tue May 10 16:19:57 2005 UTC (14 years, 7 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 29822 byte(s)
Diff to previous 50613
Changed creation of STRING_AS to explicitly set manifest sting token length
as calculating it from string size does not work for strings with escaped
characters, multi-line and verbatim  strings.


Revision 50613 - (view) (annotate) - [select for diffs]
Modified Mon May 2 17:04:04 2005 UTC (14 years, 7 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 29673 byte(s)
Diff to previous 50134
Supported new syntax for feature alias (operator) names.


Revision 50134 - (view) (annotate) - [select for diffs]
Modified Tue Apr 19 03:28:38 2005 UTC (14 years, 7 months ago) by manus
Original Path: trunk/Src/common/parser/AST/factory/ast_factory.e
File length: 29326 byte(s)
Copied from: trunk/Src/common/parser/AST/skeleton/ast_factory.e revision 50133
Diff to previous 48084
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).


Revision 48084 - (view) (annotate) - [select for diffs]
Modified Sat Jan 29 03:22:55 2005 UTC (14 years, 10 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 43181 byte(s)
Diff to previous 46261
Replaced `clone' by `twin'.
Adapted to new Eiffel parser.
Remove range checking in INTEGER_CONSTANT, we now blindly accept its content.
  (letting the real compiler class INTEGER_CONSTANT do the checking).
Moved compiler classes override from common/parser/AST/error to new directory
  common/parser/AST/compiler_override. Added TYPE_A to this cluster.


Revision 46261 - (view) (annotate) - [select for diffs]
Modified Tue Nov 2 15:33:15 2004 UTC (15 years, 1 month ago) by alexk
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44505 byte(s)
Diff to previous 45950
Added checks for input ranges of integer constants.


Revision 45950 - (view) (annotate) - [select for diffs]
Modified Fri Oct 8 11:03:37 2004 UTC (15 years, 2 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44487 byte(s)
Diff to previous 45834
Fixed bug that resulted in incorrect handling of negative hexadecimal manifest constants.


Revision 45834 - (view) (annotate) - [select for diffs]
Modified Fri Sep 24 18:51:24 2004 UTC (15 years, 2 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44346 byte(s)
Diff to previous 45583
Supported indented and non-indented verbatim strings.


Revision 45583 - (view) (annotate) - [select for diffs]
Modified Mon Sep 13 14:30:49 2004 UTC (15 years, 3 months ago) by alexk
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44248 byte(s)
Diff to previous 44452
Supported once manifest strings.


Revision 44452 - (view) (annotate) - [select for diffs]
Modified Wed Jul 21 06:56:47 2004 UTC (15 years, 4 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44024 byte(s)
Diff to previous 43414
Adapted to change of the parsing which does not allow anymore `reference X'
  syntax (removed after EMCA discussion)


Revision 43414 - (view) (annotate) - [select for diffs]
Modified Wed Jun 2 01:11:20 2004 UTC (15 years, 6 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44090 byte(s)
Diff to previous 42633
Renamed EIFFEL_TYPE to TYPE_AS so that we can use the generated
  eiffel classes from $EIFFEL_SRC/common/parser/parser.


Revision 42633 - (view) (annotate) - [select for diffs]
Modified Fri Apr 9 03:11:52 2004 UTC (15 years, 8 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44134 byte(s)
Diff to previous 41705
Implemented constraints that are either reference or expanded.


Revision 41705 - (view) (annotate) - [select for diffs]
Modified Fri Mar 5 07:01:34 2004 UTC (15 years, 9 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 43891 byte(s)
Diff to previous 39766
New way to create CLASS_TYPE (no more special derivation for expanded or
separate).
Refactored factory for agent creation.


Revision 39766 - (view) (annotate) - [select for diffs]
Modified Fri Oct 17 23:54:35 2003 UTC (16 years, 1 month ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44116 byte(s)
Diff to previous 38903
Updated parser to pass location of indexing clause needed to display
warning on incorrect indexing clause tag.


Revision 38903 - (view) (annotate) - [select for diffs]
Modified Fri Sep 5 05:27:04 2003 UTC (16 years, 3 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44050 byte(s)
Diff to previous 37138
Added `has_externals' so that when a class has an external declaration, it
is set to True. Useful for the compiler to find out if it needs to freeze
or not when creating a new generic derivation of a class.


Revision 37138 - (view) (annotate) - [select for diffs]
Modified Mon May 5 19:53:40 2003 UTC (16 years, 7 months ago) by julieng
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 43983 byte(s)
Diff to previous 37123
Remove features related to the creation of nodes that are not not used anymore in the ast tree.
These features are :`new_boolean_type_as', `new_character_type_as', `new_double_type_as', `new_integer_type_as', `new_pointer_type_as', `new_real_type_as'


Revision 37123 - (view) (annotate) - [select for diffs]
Modified Mon May 5 04:30:26 2003 UTC (16 years, 7 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 45138 byte(s)
Diff to previous 36931
Renamed INFIX_AS into INFIX_PREFIX_AS since it now represents both an infix
or a prefix routine.


Revision 36931 - (view) (annotate) - [select for diffs]
Modified Wed Apr 23 00:33:17 2003 UTC (16 years, 7 months ago) by julieng
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 45124 byte(s)
Diff to previous 36913
Update AST element to take care of the changes made in the parser.


Revision 36913 - (view) (annotate) - [select for diffs]
Modified Tue Apr 22 23:38:19 2003 UTC (16 years, 7 months ago) by julieng
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44736 byte(s)
Diff to previous 36846
Change type TYPE into EIFFEL_TYPE in feature `new_convert_feat_as'.


Revision 36846 - (view) (annotate) - [select for diffs]
Modified Fri Apr 18 22:41:50 2003 UTC (16 years, 7 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 44729 byte(s)
Diff to previous 35452
Added support for new `convert' keyword.
Added Position information in TYPE_DEC_AS.


Revision 35452 - (view) (annotate) - [select for diffs]
Modified Tue Jan 21 01:38:46 2003 UTC (16 years, 10 months ago) by manus
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 43797 byte(s)
Diff to previous 34923
Update code to new Eiffel parser `initialize' feature which now takes
an extra argument `end_location' (location of `end' keyword for current node).
Removed AST_YACC and use AST_EIFFEL instead.


Revision 34923 - (view) (annotate) - [select for diffs]
Added Wed Nov 27 18:07:22 2002 UTC (17 years ago) by julieng
Original Path: trunk/Src/common/parser/AST/skeleton/ast_factory.e
File length: 43262 byte(s)
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.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC 1.1.23