1. 12 Sep, 2006 2 commits
    • Roland Levillain's avatar
      Fix the current implementation of image_entry, as well as some · 34b029a5
      Roland Levillain authored
      	* oln/core/abstract/internal/image_impl.hh (oln::category::image):
      	Move this declaration...
      	* oln/core/abstract/image.hh: ...here.
      	* oln/core/case.hh: New file.
      	* oln/core/abstract/image_abstractions.hh,
      	* olena/oln/core/abstract/entry.hh,
      	* oln/core/traits.hh: Use it.
      	* oln/Makefile.am (nobase_oln_HEADERS): Add core/case.hh.
      	* oln/core/abstract/image_dimension.hh
      	(oln::ERROR::UNKNOWN_GRID_TYPE): New.
      	(oln::default_case_<grid_dim_tag, grid_type): Use it.
      	(ext_vtype_in_category): Turn into...
      	(ext_vtype): ...this.
      	* oln/core/abstract/image_typeness.hh (ext_vtype_in_category):
      	Turn into...
      	(ext_vtype): ...this.
      	* oln/core/typedefs.hh (oln_type_of, oln_type_of_): Move
      	these macros...
      	* oln/core/abstract/macros.hh: ...here, and replace the previous
      	Rename file as...
      	* oln/core/macros.hh: ...this.
      	Adjust header guards.
      	* oln/core/abstract/internal/image_impl.hh: Adjust users.
      	* oln/Makefile.am (nobase_oln_HEADERS): Remove
      	Add core/macros.hh
      	* oln/core/abstract/grid.hh (oln_grd_type_of, oln_grd_type_of_):
      	Remove macros.
      	(vtypes_in_category< category::grid, abstract::grid<G> >): Turn
      	(vtypes< abstract::grid<G> >): ...this.
      	(packed_vtypes_in_category<category::grid, G>):
      	* oln/core/1d/grid1d.hh, oln/core/2d/grid2d.hh,
      	* oln/core/3d/grid3d.hh (vtypes_in_category): Turn into...
      	(vtypes): ...this.
      	* tests/grid.cc: s/oln_grd_type_of_/oln_type_of_/g
      	* tests/image_entry.cc (my::dummy): New declaration.
      	(vtypes_in_category<category::image, my::image>): Turn into...
      	(vtypes<my::image>): ...this.
      	Add missing virtual types.
      	(my::image): Fix base class.
      	(main): Remove any references to
      	packed_vtypes_in_category<oln::category::image, my::image>, since
      	it no longer exists.
      	* tests/Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/extended.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@529 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Clean up ChangeLog. · c2111331
      Roland Levillain authored
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@528 4aad255d-cdde-0310-9447-f3009e2ae8c0
  2. 07 Sep, 2006 3 commits
    • Thierry Geraud's avatar
      2006-09-07 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · dd2ae6da
      Thierry Geraud authored
      	Add image2d and fix topo-related classes.
      	* olena/tests/npoints.cc: New.
      	* olena/tests/Makefile.am: Update.
      	* olena/oln/core/image_entry.hh: New.
      	* olena/oln/core/2d/image2d.hh: New.
      	* olena/oln/basics2d.hh: Force instantiation and include
      	* olena/oln/core/typedefs.hh: Include mlc/assert.hh and
      	(piter_type): Uncomment.
      	(rvalue_type): New.
      	(psite_type): New.
      	(concrete_type): Uncomment.
      	(size_type): Add comment.
      	(topo_type): New.
      	* olena/oln/core/abstract/topo.hh (bbox): Remove this method which
      	is redundant with the one of topo_with_bbox.
      	* olena/oln/core/abstract/topo_with_bbox.hh (bbox): Fix typo.
      	* olena/oln/core/abstract/entry.hh (next_entry_node): New
      	specialization to handle the specific and rare case of having no
      	* olena/oln/core/abstract/topo_ra.hh: Fix cut n paste errors.
      	* olena/oln/core/abstract/pset.hh (piter): New vtype decl.
      	* olena/oln/core/gen/fwd_piter.hh (fwd_piter_): Add commented
      	forthcoming ctors.
      	* olena/oln/core/gen/bbox_topo.hh: Cosmetics.
      	* olena/oln/core/pset_entry.hh (piter_type): New.
      	* olena/oln/core/abstract/image.hh: Update.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@527 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-07 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 4c3a9698
      Thierry Geraud authored
      	Start the topology hierarchy.
      	* oln/core/topo_entry.hh: New.
      	* oln/core/abstract/topo.hh: New.
      	* oln/core/abstract/topo_hierarchies.hh: New.
      	* oln/core/abstract/topo_with_bbox.hh: New.
      	* oln/core/abstract/topo_ra.hh: New.
      	* oln/core/gen/bbox_topo.hh: New.
      	* oln/core/2d/aliases.hh (topo2d): New.
      	Add a new sub-hierarchy to abstract::pset.
      	* oln/core/abstract/pset_cnx.hh: New.
      	* oln/core/typedefs.hh (cnx_type): New.
      	* oln/core/abstract/pset_hierarchies.hh (pset_cnx_hierarchy): New.
      	* oln/core/abstract/bbox.hh (cnx_type): New.
      	* oln/core/abstract/pset_bboxed.hh (is_valid): Move this method into...
      	* oln/core/abstract/pset.hh (pset): ...this class.
      	(dim): New vtype.
      	* oln/core/pset_entry.hh (single_vtype): Add vtype dim.
      	* oln/basics2d.hh: Include oln/core/gen/bbox_topo.hh.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@526 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-07 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · a9e56bc2
      Thierry Geraud authored
      	* mlc/cmp.hh (assert_ok_): New shortcut.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@525 4aad255d-cdde-0310-9447-f3009e2ae8c0
  3. 06 Sep, 2006 2 commits
    • Thierry Geraud's avatar
      2006-09-06 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 444d8d71
      Thierry Geraud authored
      	Update abstract::pset hierarchy to final SCOOP-2 design.
      	* oln/core/pset_entry.hh: New.
      	* oln/core/typedefs.hh: Include oln/core/abstract/entry.hh.
      	* oln/core/abstract/bbox.hh: Clean includes.
      	(set_super_type): Change from abstract::pset<E> to pset_entry<E>.
      	(bbox): Update.
      	* oln/core/abstract/entry.hh (set_super_type): New specialization.
      	* oln/core/abstract/pset.hh (Copyright): Fix years.
      	(vtypes, ext_vtype): Remove.
      	(fixed_pset, ra_pset, bboxed_pset): Move and dispatch to...
      	* oln/core/abstract/pset_fixed.hh: ...this new file.
      	* oln/core/abstract/pset_ra.hh: ...this new file.
      	* oln/core/abstract/pset_bboxed.hh: ...this new file.
      	* oln/core/abstract/pset.hh
      	(pset_fixed_hierarchy, pset_ra_hierarchy, pset_bboxed_hierarchy)
      	(case_): Move to...
      	* oln/core/abstract/pset_hierarchies.hh: ...this new file.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@524 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-06 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 6bfb16a0
      Thierry Geraud authored
      	New macro to declare virtual types in abstract classes.
      	* stc/vtypes.hh (stc_virtual_typedef): New.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@523 4aad255d-cdde-0310-9447-f3009e2ae8c0
  4. 05 Sep, 2006 1 commit
    • Thierry Geraud's avatar
      2006-09-05 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 7eda9789
      Thierry Geraud authored
      	Test on abstract::pset alternative code for static inheritance. 
      	* oln/core/abstract/entry.hh: New proposition for entry class in
      	static hierarchies.  This is a test file that should be removed
      	after stc update.
      	* oln/core/typedefs.hh (fixed_type, ra_type, bbox_type): New
      	typedef declarations.
      	* oln/core/abstract/bbox.hh (fwd_piter_, bkd_piter_): Remove
      	these forward declarations.
      	(ext_vtype): Remove.
      	(vtypes): New.
      	(ra_type, fixed_type, bbox_type): New associated types.
      	(bbox): Change inheritance from abstract::pset to an entry class.
      	(bbox): Remove all methods except print from this class; the
      	methods are dispatched into abstract::bboxed_pset and
      	(bbox): Likewise for attributes.
      	(print): Reject code to subclasses.
      	(impl_bbox): New method.
      	* oln/core/abstract/pset.hh: Include entry.hh.
      	(fwd_piter_type, bkd_piter_type): New associated types.
      	(bbox_type, ra_type, fixed_type): Likewise
      	(pset): Add virtual to inheritance.
      	(~pset): Extend check code.
      	(fixed_pset, ra_pset, bboxed_pset): New sub-abstractions.
      	(pset_fixed_hierarchy, pset_ra_hierarchy, pset_bboxed_hierarchy):
      	New hierarchy tags.
      	* oln/core/gen/bbox.hh: Update.
      	(operator=): New.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@522 4aad255d-cdde-0310-9447-f3009e2ae8c0
  5. 04 Sep, 2006 5 commits
    • Roland Levillain's avatar
      Adjust virtual types class names. · 8d0886b4
      Roland Levillain authored
      	* oln/core/abstract/image.hh,
      	* oln/core/abstract/image_dimension.hh,
      	* oln/core/abstract/image_typeness.hh,
      	* oln/core/abstract/grid.hh, oln/core/1d/grid1d.hh,
      	* oln/core/2d/grid2d.hh, oln/core/3d/grid3d.hh,
      	* tests/image_entry.cc (vtypes): Rename as...
      	(vtypes_in_category): ...this.
      	* oln/core/abstract/image.hh, oln/core/abstract/grid.hh,
      	* tests/image_entry.cc (packed_vtypes): Rename as...
      	(packed_vtypes_in_category): ...this.
      	* oln/core/abstract/point.hh, oln/core/abstract/dpoint.hh,
      	* oln/core/abstract/piter.hh, oln/core/abstract/pset.hh,
      	* oln/core/gen/bbox.hh,
      	* oln/core/gen/bkd_piter.hh, oln/core/gen/fwd_piter.hh,
      	* oln/core/2d/point2d.hh, oln/core/2d/dpoint2d.hh (vtypes_):
      	Rename as...
      	* oln/core/abstract/pset.hh, oln/core/abstract/bbox.hh
      	(ext_vtype_): Rename as...
      	(ext_vtype): ...this.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@521 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Rename virtual types classes. · d326e99b
      Roland Levillain authored
      	* stc/vtypes.hh (vtypes, single_vtype, ext_vtype): Rename as...
      	(vtypes_in_category, single_vtype_in_category, ext_vtype_in_category):
      	(vtypes_, single_vtype_, ext_vtype_): Rename as...
      	(vtypes, single_vtype, ext_vtype): ...this.
      	(packed_vtypes): Rename as...
      	(packed_vtypes_in_category): ...this.
      	(packed_vtypes_): Rename as...
      	(packed_vtypes): ...this
      	* tests/vtypes.cc, tests/vtypes-and-exact.cc,
      	* tests/vtypes-multiple-supers.cc: Adjust.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@520 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-04 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · de963d60
      Thierry Geraud authored
      	Test how to define derived associated types in bbox hierarchy.
      	* oln/core/abstract/bbox.hh (ext_vtype_): New definitions of
      	fwd_piter_type and bkd_piter_type.
      	(~bbox): Comment possible recursive code.
      	* oln/core/gen/bbox.hh (vtypes_): Comment former definitions of
      	fwd_piter_type and bkd_piter_type.
      	* oln/core/abstract/pset.hh (ext_vtype_): New definition for grid.
      	(fwd_piter_type, bkd_piter_type): Comment because they are now
      	externally defined.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@519 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Add a third kind of structure for virtual types to avoid endless · ae1fe4ac
      Roland Levillain authored
      	recursions when their definitions involve the knowledge of the
      	exact type of the class these virtual types belong to.
      	* static/stc/vtypes.hh (single_vtype, single_vtype_): New template
      	(internal::tag::single): New.
      	(internal::tag::external): Rename as...
      	(internal::tag::extended): ...this.
      	(get_vtype_helper): Adjust and extended for internal::tag::single.
      	(select_typedef): Extended retrieval algorithm.
      	(type_of_): Likewise.
      	Check the return type of the algorithm.
      	More documentation.
      	* static/tests/vtypes.cc: Conform to the new terminology.
      	* static/tests/vtypes-multiple-supers.cc: Adjust.
      	* tests/vtypes-and-exact.cc: Likewise.
      	Aesthetic changes.
      	(main): Exercize stc::is_any_.
      	* static/stc/valist_aggregator.hh (valist_aggregator): Use virtual
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@518 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Add a wrapper around mlc::assert_ returning a given type. · ca09d5f6
      Roland Levillain authored
      	* mlc/assert.hh (assert_and_return_): New class.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@517 4aad255d-cdde-0310-9447-f3009e2ae8c0
  6. 01 Sep, 2006 5 commits
    • Thierry Geraud's avatar
      2006-09-01 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 0b71ec5a
      Thierry Geraud authored
      	* oln/core/abstract/piter.hh (to_point): New.
      	* oln/core/abstract/bbox.hh (pmin, pmax): New overloaded methods.
      	(is_valid, print, operator<<): New.
      	* oln/core/abstract/iter.hh (iter): Change inheritance from
      	any__simple to any__best_memory to fix trouble with multiple
      	(ctor): Remove dangerous call to invalidate.
      	* oln/core/abstract/point_nd.hh (operator<<): New.
      	(impl_less): Update.
      	* oln/core/abstract/pset.hh (coord_type): New.
      	* oln/core/2d/point2d.hh (coord_t): Move to public so that this
      	associated type is directly accessible from...
      	* oln/core/gen/bbox.hh (vtypes): ...this set of types.
      	* oln/core/gen/fwd_piter.hh (psup_): Remove.
      	(bbox): New accessor.
      	(impl_next): Rewrite.
      	(print, operator<<): New.
      	(invariant): Strengthen.
      	* oln/core/gen/bkd_piter.hh: Likewise.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@516 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-01 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · f460aa55
      Thierry Geraud authored
      	* xtd/optraits.hh
      	(xtd_op_eq_trait_, xtd_op_neq_trait_): New.
      	(xtd_op_less_trait_, xtd_op_leq_trait_): New. 
      	(xtd_op_greater_trait_, xtd_op_geq_trait_): New.
      	* xtd/vec.hh: Replace assert by contract macros. 
      	(operator<<): New.
      	(lexi_less_t, lexi_less): New.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@515 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-01 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · a0a015e8
      Thierry Geraud authored
      	* mlc/contract.hh (implies): New macro.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@514 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-01 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 677bbd2d
      Thierry Geraud authored
      	Add bboxes and iterators.
      	* oln/core/abstract/piter.hh: New.
      	* oln/core/abstract/bbox.hh: New.
      	* oln/core/abstract/iter.hh: New.
      	* oln/core/abstract/pset.hh: New.
      	* oln/core/2d/aliases.hh: New.
      	* oln/core/gen/fwd_piter.hh: New.
      	* oln/core/gen/bkd_piter.hh: New.
      	* oln/core/gen/bbox.hh: New.
      	* oln/core/2d/point2d.hh (point2d_): New ctor.
      	(point2d, dpoint2d, point2df, dpoint2df): Move typedefs to...
      	* oln/basics2d.hh: ...this new file.
      	* oln/core/typedefs.hh (oln_type_of_): New macro.
      	(include): Update.
      	(fwd_piter_type, bkd_piter_type): New decls.
      	* oln/core/abstract/point.hh (include): Update.
      	(vtypes_): New specialization.
      	* oln/core/abstract/dpoint.hh: Likewise.
      	* oln/core/abstract/point_nd.hh (include): Update.
      	(set_super_type): New specialization.
      	* oln/core/abstract/dpoint_nd.hh: Likewise.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@513 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-09-01 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 70828a71
      Thierry Geraud authored
      	Add materials to handle types without category.
      	* stc/vtypes.hh (stc_equip_namespace_with_vtypes): Add
      	ext_vtype_ and packed_vtypes_ for types without category.
      	(ext_vtype, packed_vtypes): Add specializations for
      	category being void.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@512 4aad255d-cdde-0310-9447-f3009e2ae8c0
  7. 31 Aug, 2006 2 commits
    • Thierry Geraud's avatar
      2006-08-31 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · 65f043b1
      Thierry Geraud authored
      	Add dpoint, oln traits, and operators on point/dpoint.
      	* oln/core/type.hh: New.
      	* oln/core/traits_id.hh: New.
      	* oln/core/abstract/dpoint.hh: New.
      	* oln/core/abstract/dpoint_nd.hh: New.
      	* oln/core/traits.hh: New.
      	* oln/core/2d/dpoint2d.hh: New.
      	* oln/core/abstract/point.hh (point): Add inheritance to
      	(operators): New.
      	* oln/core/abstract/point_nd.hh (point_): New meta-function.
      	(impl_eq): Rename as...
      	(impl_equal): ...this.
      	(coord): Rename as...
      	(coord_t): ...this.
      	(impl_less): New.
      	(impl_plus_equal, impl_plus): New.
      	(impl_minus_equal, impl_minus, impl_minus): New.
      	(vec): New.
      	(case_): New specializations.
      	(point_nd): New ctor.
      	* oln/core/2d/point2d.hh: Update forward declarations.
      	(point_, dpoint_): New specializations.
      	(point2d): New ctor.
      	(coord): Rename as...
      	(coord_t): ...this.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@511 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Thierry Geraud's avatar
      2006-08-31 Thierry GERAUD <theo@tegucigalpa.lrde.epita.fr> · b560a9fe
      Thierry Geraud authored
      	* mlc/case.hh (mlc_case_equipment_for_namespace): Add where_ so
      	that the whole equipment is well-localized in the client
      	* mlc/cmp.hh (assert_equal_, assert_defined_): New shortcuts.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@510 4aad255d-cdde-0310-9447-f3009e2ae8c0
  8. 30 Aug, 2006 3 commits
  9. 26 Jun, 2006 2 commits
    • Quentin Hocquet's avatar
      Remove scool compiler. · 2c5cec0a
      Quentin Hocquet authored
      	Scool compiler has been moved into its own repository.
      	* tools: Remove.
      	* tools/test.yml: Remove.
      	* tools/tests: Remove.
      	* tools/tests/syntax error: Remove.
      	* tools/tests/syntax error/wrong.scl: Remove.
      	* tools/tests/parse-ref: Remove.
      	* tools/tests/parse-ref/vardec.ref: Remove.
      	* tools/tests/parse-ref/fundec.ref: Remove.
      	* tools/tests/parse-ref/funcall_no-args.ref: Remove.
      	* tools/tests/parse-ref/empty-class_dec.ref: Remove.
      	* tools/tests/parse-ref/varinit.ref: Remove.
      	* tools/tests/parse-ref/emtpy-class_dec.ref: Remove.
      	* tools/tests/parse-ref/no-args_funtype.ref: Remove.
      	* tools/tests/parse-ref/class_dec.ref: Remove.
      	* tools/tests/parse-ref/manydec.ref: Remove.
      	* tools/tests/parse-ref/wiki1.ref: Remove.
      	* tools/tests/parse-ref/bi-exp.ref: Remove.
      	* tools/tests/parse-ref/funcall.ref: Remove.
      	* tools/tests/parse-ref/wiki2.ref: Remove.
      	* tools/tests/parse-ref/function.ref: Remove.
      	* tools/tests/parse-ref/consinit.ref: Remove.
      	* tools/tests/parse-ref/wiki3.ref: Remove.
      	* tools/tests/parse-ref/funtype.ref: Remove.
      	* tools/tests/parse-ref/empty.ref: Remove.
      	* tools/tests/parse-ref/type_static-call.ref: Remove.
      	* tools/tests/parse-ref/guard.ref: Remove.
      	* tools/tests/good: Remove.
      	* tools/tests/good/type_static-call.scl: Remove.
      	* tools/tests/good/guard.scl: Remove.
      	* tools/tests/good/vardec.scl: Remove.
      	* tools/tests/good/fundec.scl: Remove.
      	* tools/tests/good/funcall_no-args.scl: Remove.
      	* tools/tests/good/varinit.scl: Remove.
      	* tools/tests/good/empty-class_dec.scl: Remove.
      	* tools/tests/good/manydec.scl: Remove.
      	* tools/tests/good/no-args_funtype.scl: Remove.
      	* tools/tests/good/class_dec.scl: Remove.
      	* tools/tests/good/wiki1.scl: Remove.
      	* tools/tests/good/funcall.scl: Remove.
      	* tools/tests/good/bi-exp.scl: Remove.
      	* tools/tests/good/function.scl: Remove.
      	* tools/tests/good/wiki2.scl: Remove.
      	* tools/tests/good/consinit.scl: Remove.
      	* tools/tests/good/wiki3.scl: Remove.
      	* tools/tests/good/funtype.scl: Remove.
      	* tools/tests/good/empty.scl: Remove.
      	* tools/transformer: Remove.
      	* tools/transformer/scoolc.str: Remove.
      	* tools/transformer/Makefile: Remove.
      	* tools/scoolc: Remove.
      	* tools/gen.yml: Remove.
      	* tools/parser: Remove.
      	* tools/parser/grammar: Remove.
      	* tools/parser/grammar/Class.sdf: Remove.
      	* tools/parser/grammar/Decl.sdf: Remove.
      	* tools/parser/grammar/Exp.sdf: Remove.
      	* tools/parser/grammar/Scool.sdf: Remove.
      	* tools/parser/grammar/ExpOrType.sdf: Remove.
      	* tools/parser/grammar/Type.sdf: Remove.
      	* tools/parser/grammar/Lexical.sdf: Remove.
      	* tools/parser/grammar/Guard.sdf: Remove.
      	* tools/parser/grammar/Stm.sdf: Remove.
      	* tools/parser/parse-scool: Remove.
      	* tools/parser/Makefile: Remove.
      	* tools/Makefile: Remove.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@506 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Quentin Hocquet's avatar
      Remove external link to transformers. · 5a459e32
      Quentin Hocquet authored
      	* tools: Remove svn:external property.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@505 4aad255d-cdde-0310-9447-f3009e2ae8c0
  10. 15 Jun, 2006 2 commits
    • Roland Levillain's avatar
      2006-06-15 Roland Levillain <roland@lrde.epita.fr> · 1eaf1622
      Roland Levillain authored
      	Document method checks in Static tour.
      	* tests/tour.cc (static_hierarchy_with_methods::test): Rename
      	(static_hierarchy_with_methods::test1): ...this.
      	(main): Adjust.
      	(static_hierarchy_with_methods::D): New.
      	(static_hierarchy_with_methods::test2): New.
      	(static_hierarchy_with_method_checks): New section.
      	Add a reference (Concept Checking).
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@504 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      2006-06-15 Roland Levillain <roland@lrde.epita.fr> · 1f1cf765
      Roland Levillain authored
      	More on SCOOP methods in Static tour.
      	* tests/tour.cc (dynamic_hierarchy::A::foo)
      	(dynamic_hierarchy::A::bar, dynamic_hierarchy::B::foo)
      	(dynamic_hierarchy::B::bar, dynamic_hierarchy::C::foo): Return an
      	int value.
      	(static_hierarchy_with_methods::C::impl_foo): Likewise.
      	(static_hierarchy_with_methods): Add comments.
      	(static_hierarchy_with_methods::test): New.
      	(main): Call it.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@503 4aad255d-cdde-0310-9447-f3009e2ae8c0
  11. 14 Jun, 2006 2 commits
    • Roland Levillain's avatar
      2006-06-14 Roland Levillain <roland@lrde.epita.fr> · ecd0b6c1
      Roland Levillain authored
      	More on the retrieval of and the conversion to the exact type in
      	Static tour.
      	* tests/tour.cc (static_hierarchy_with_any): More on the retrieval
      	of and the conversion to the exact type.
      	(main): Run dynamic tests.
      	(static_hierarchy_with_methods::A): Use stc::any instead of
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@502 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      2006-06-14 Roland Levillain <roland@lrde.epita.fr> · b896a805
      Roland Levillain authored
      	Add stc_to_exact and stc_to_exact macros.
      	* stc/exact.hh (stc_to_exact, stc_to_exact_): New macros.
      	* stc/vtypes.hh (type_of_): Use the stc_to_exact macro instead
      	of stc::to_exact_.
      	* tests/exact.cc (main): Perform additional static tests.
      	* tests/find_exact.cc (main): Use the stc_to_exact_ macro instead
      	of stc::to_exact_.
      	* tests/vtypes-and-exact.cc (main): Likewise
      	Check the super classes.
      	(A): Use stc::any instead of stc::any__simple.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@501 4aad255d-cdde-0310-9447-f3009e2ae8c0
  12. 13 Jun, 2006 1 commit
  13. 12 Jun, 2006 2 commits
  14. 06 Jun, 2006 3 commits
    • Roland Levillain's avatar
      Perform virtual type retrieval using the exact type of a class. · 9934a3b0
      Roland Levillain authored
      	* stc/vtypes.hh (type_of_): Get the exact type of the
      	``from_type'' class, and perform the retrieval on it (instead of
      	from_type directly).
      	* tests/vtypes-and-exact.cc: New test.
      	* tests/Makefile.am (check_PROGRAMS): Add vtypes-and-exact.cc.
      	(vtypes_and_exact_SOURCES): New.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@497 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Perform additional tests on simple virtual types (no multiple · 3df8d70e
      Roland Levillain authored
      	inheritance nor use of stc::any).
      	* tests/vtypes.cc: Aesthetic changes.
      	(C): Rename as...
      	(Z): ...this.
      	(Z::bar_type, Z::baz_type, Z::yin_type): New typedefs.
      	(main): Check more virtual types.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@496 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Complete the support of multiple inheritance in SCOOP: adjust the · 8d72549d
      Roland Levillain authored
      	algorithm of virtual type retrieval to take multiple base classes
      	into account.
      	* stc/internal/extract_vtype_from_list.hh: New file.
      	* stc/vtypes.hh: Include it.
      	(ERROR::FIRST_PARAMETER_OF_rec_get_vtype_SHOULD_BE_A_TAG): Rename
      	(ERROR::FIRST_PARAMETER_OF_rec_get_vtype_IS_NOT_A_TAG): ...this.
      	New structs (error messages).
      	(stc_internal_maybe_get_nth_super_type): New macro.
      	(get_supers_list): Use it.
      	(maybe_super_type): Rename as...
      	(maybe_get_super_type): ...this.
      	(get_vtype): Rename as...
      	(get_vtype_helper): ...this.
      	(stc_internal_rec_get_vtype): New macro.
      	(rec_get_vtype_from_list): New struct.
      	(rec_get_vtype): Use it to rewrite the retrieval algorithm to take
      	multiple base classes into account.
      	Complete static assertions on the nature of the first parameter
      	(retrieval method tag).
      	* stc/Makefile.am (nobase_stc_HEADERS): Add
      	* tests/vtypes-multiple-supers.cc: New test.
      	* tests/Makefile.am (check_PROGRAMS): Add vtypes-multiple-supers.
      	(vtypes_multiple_supers_SOURCES): New.
      	* tests/vtypes.cc (packed_vtypes <category::my_cat, T>): Move this
      	class just after the declaration of my::cat.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@495 4aad255d-cdde-0310-9447-f3009e2ae8c0
  15. 05 Jun, 2006 3 commits
    • Roland Levillain's avatar
      Catch up with Static's support for multiple inheritance. · 93086a11
      Roland Levillain authored
      	* oln/core/1d/grid1d.hh, oln/core/2d/grid2d.hh,
      	* oln/core/3d/grid3d.hh: s/stc_super_/stc_get_supers/.
      	* tests/image_entry.cc: Add a missing `public' qualifier for
      	exported types.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@494 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Allow multiple super classes in SCOOP's static hierarchies. · 25c08dec
      Roland Levillain authored
      	* stc/valist_aggregator.hh: New.
      	* stc/vtypes.hh: Include it.
      	New struct.
      	(set_super_type): Inherit from mlc::undefined by default.
      	(internal::maybe_super_type, get_supers_list)
      	(internal::get_super_types_helper, get_super_types)
      	(rec_get_vtype): s/stc_super/stc_get_super/.
      	(stc_set_super): Remove previous definition of this macro, and
      	make it a shortcut for...
      	(stc_set_nth_super): ...this one (new).
      	(stc_get_supers, stc_get_nth_super_, stc_get_nth_super_)
      	(stc_get_super_, stc_get_super_): New macros.
      	(stc_super, stc_super_): Remove macros.
      	(stc_pseudosuper, stc_pseudosuper_): Rename macros as...
      	(stc_get_pseudosuper, stc_get_pseudosuper_): ...these.
      	* tests/super.cc, tests/multiple-supers.cc: New tests.
      	* tests/vtypes.cc: s/stc_get_supers_/stc_get_supers/g.
      	* stc/Makefile.am (nobase_stc_HEADERS): Add exact.hh
      	and valist_aggregator.hh.
      	* tests/Makefile.am (check_PROGRAMS): Add multiple-supers, super.
      	(multiple_supers_SOURCES, super_SOURCES): New.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@493 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Replace stc::internal::not_user_defined with mlc::undefined. · 7f0677cf
      Roland Levillain authored
      	* stc/entry.hh (internal::not_user_defined): Remove class.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@492 4aad255d-cdde-0310-9447-f3009e2ae8c0
  16. 01 Jun, 2006 2 commits
    • Roland Levillain's avatar
      Please the Intel C++ Compiler w.r.t. the substitution of arguments · 7404f95c
      Roland Levillain authored
      	of macros as template parameters.
      	* mlc/case.hh (mlc_case, mlc_case_)
      	* mlc/cmp.hh (mlc_eq, mlc_neq, mlc_is_bexpr, mlc_is_not_bexpr)
      	(mlc_is_found, mlc_is_not_found, mlc_is_undefined)
      	(mlc_is_defined, mlc_is_ok, mlc_is_not_ok, mlc_is_builtin)
      	* mlc/elt.hh (mlc_elt, mlc_elt_)
      	* mlc/if.hh (mlc_if, mlc_if_)
      	* mlc/implies.hh (mlc_implies)
      	* mlc/switch.hh (mlc_switch, mlc_switch_)
      	* mlc/typedef.hh (mlc_typedef, mlc_typedef_, mlc_typedef_in) 
      	(mlc_typedef_in, mlc_typedef_onlyif, mlc_typedef_onlyif_)
      	* mlc/value.hh (mlc_value): Add space around the arguments of
      	these macro to please icpc, whose preprocessor doesn't add
      	extra space when expanding macros, leading sometimes to
      	syntax errors.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@491 4aad255d-cdde-0310-9447-f3009e2ae8c0
    • Roland Levillain's avatar
      Factor the recursive retrieval in internal and external vtypes. · 43f9a442
      Roland Levillain authored
      	* stc/vtypes.hh
      	(tag::method, tag::internal, tag::external): New.
      	(get_vtype): New.
      	(rec_get_vtype): Handle both internal and external vtypes.
      	(rec_ext_vtype): Remove.
      git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@490 4aad255d-cdde-0310-9447-f3009e2ae8c0