Commit graph

1634 commits

Author SHA1 Message Date
e5ab9d73eb add specialisation to deal with wrapping a reference... 2009-12-21 06:19:56 +01:00
6a7f325ecf static assert to protect against misguided equality comparison 2009-12-21 05:45:02 +01:00
3db676fa32 base implementation fo the ItemWrapper 2009-12-21 05:44:29 +01:00
83eb6976cd draft an universal val/ref wrapper, needed by TransformIter.
Seemingly I've hit a nasty problem here, because PlacementIndex
should return an Placement&, but this is being fetched
after-the fact from within the iterator.
2009-12-20 04:33:24 +01:00
4773305853 Fix itertools: allow TransformIter to return an reference 2009-12-19 03:55:02 +01:00
4afa1ada5b WIP implement scope content enumeration
unresolved problem with TransformIter yielding a reference
2009-12-18 05:05:16 +01:00
9f09a8aa49 push creation of the root MObject to users of PlacementIndex 2009-12-17 03:16:08 +01:00
d7aab2990f placeholder implementation of Label MObject 2009-12-17 03:14:59 +01:00
e3de0aac7c WIP handling of the model root element within the index 2009-12-16 04:54:36 +01:00
73fcc78cb3 PlacementIndex checks for bottom (invalid) ID 2009-12-13 05:49:08 +01:00
b74a505c44 change implementation of "bottom" PlacementRef to 0-LUID 2009-12-13 05:48:05 +01:00
e89b4503fd detect if the session is up and opened, lock PlacementRef else 2009-12-13 04:27:57 +01:00
6c187224eb get it through the compiler again... 2009-12-12 05:03:50 +01:00
5fd2a85400 cleanup of BuilderTool includes 2009-12-12 03:51:26 +01:00
628ad8a31d WIP add a new kind of MObject: the model root 2009-12-12 03:50:41 +01:00
fd782eb139 WIP: change management of test/mock PlacementIndex
now lifecycle of this mock index is managed automatically
from within the session services. This allows to get
rid of the smart-ptr creating factory. As a consequence,
PlacementIndex now resides directly within SessionImpl.
2009-12-11 02:49:12 +01:00
488039c4c6 cleanup and write tests covering the newly implemented stuff 2009-11-28 23:37:58 +01:00
feb4480f85 Scope handling within the PlacementIndex 2009-11-28 22:18:09 +01:00
8a47f1a1ac considerations regarding type handling in the PlacementIndex 2009-11-27 20:30:06 +01:00
66175181dc basically implemented simple element access.
But the scope registration and the type problem remains unsolved
2009-11-27 02:43:09 +01:00
cde45c021e add basic storage and implementation of the PlacementIndex tables 2009-11-27 02:03:20 +01:00
0b289863e9 documentation correction. command entry is created on completed definition now. 2009-11-27 02:02:42 +01:00
0186343909 finished implementation of QueryFocus (frontend handle) 2009-11-22 11:13:49 +01:00
4082ff919e implemented connection between QueryFocus und current ScopePath 2009-11-22 10:32:08 +01:00
12dc0e2c2d add unit test, write documentation. Closes #420 2009-11-22 07:26:51 +01:00
d90812e64b implement a stack of ScopePath frames 2009-11-22 04:36:14 +01:00
665eed5f1b new logging flag for the session 2009-11-22 04:35:37 +01:00
46eae1c03a add a refcount field (for intrusive refcounting) to ScopePath 2009-11-22 03:48:52 +01:00
36e342fc11 Implement ScopePath functionality. Closes #322 2009-11-22 01:16:33 +01:00
27390b5732 add query for path/location to ScopeLocator 2009-11-22 01:15:31 +01:00
451253ae8a utility to append elements from an Lumiera Forward Iterator until exhaustion 2009-11-22 01:14:27 +01:00
c328945cb4 commented the ScopePath API 2009-11-21 21:33:01 +01:00
ed86c97881 Defined/Stubbed all required ScopePath operations 2009-11-21 20:55:14 +01:00
b7987cf3ce define iteration on ScopePath as reverse iteration on the contained Scopes 2009-11-21 04:48:29 +01:00
b2849c6099 defined and implemented equality of scopes 2009-11-21 02:49:24 +01:00
ce98bd9bca Finished basic concept how to establish a current query focus (Ticket #403) 2009-11-20 22:00:15 +01:00
cdb84a9b16 refining the draft for ScopeLocator 2009-11-20 19:58:22 +01:00
11463da463 better use an enum for the ScopeQuery kinds 2009-11-18 04:53:49 +01:00
c01f774344 expose the new query-for-contents facility as session service 2009-11-18 04:23:46 +01:00
9514970b6c refactor most of the session-contents-query impl into a dedicated *.cpp 2009-11-18 04:11:27 +01:00
002a0a97e6 add remaining bits to get query-for-session-contents impl to compile 2009-11-17 03:01:18 +01:00
7d6fa03c51 allow for Goal subclasses to provide copy operations, while prohibiting direct copy 2009-11-15 16:28:42 +01:00
09c0cacee2 add comparison to c-string for Literal 2009-11-15 16:27:56 +01:00
34dc8fa4de mark for later high-level model extension (Ticket #414) 2009-11-15 01:09:21 +01:00
7dcb59333d WIP draft of the complete query-for-session-contents implementation 2009-11-15 01:08:29 +01:00
a10a237b90 rename "MO" --> "MX" to avoid confusion with MObject 2009-11-14 23:07:01 +01:00
017c668d7a WIP outline of the index query resolution 2009-11-13 16:32:22 +01:00
981ea94708 finished the PlacementIndex API. 2009-11-13 04:52:48 +01:00
d0c905b5c9 add an transforming iterator to the itertools 2009-11-13 03:26:20 +01:00
a86517bd4f extend the protocol of the itertools core, abstracting the increment 2009-11-13 01:02:31 +01:00
a1448ed6f6 WIP first attempt to remove the query-interface from PlacementIndex 2009-11-12 20:15:52 +01:00
d658415144 WIP about providing scope contents discovery, backed by the index 2009-11-12 02:15:02 +01:00
bfd97bd98e now SessManagerImpl can go down entirely on implementation level 2009-11-11 06:01:25 +01:00
5535a7a00e phase out the existing access functions, now superseeded by SessionServices 2009-11-11 05:44:58 +01:00
1a76ce7a5f implement two of the SessionServices (internal APIs)
providing implementation-level access to the PlacementIndex
and especially installing a mock index for unit tests
2009-11-11 05:30:24 +01:00
7da8844581 first steps towards using the new SessionServices access mechanism
add the necessary hooks and change the SessionImpl accordingly.
Still using the old access method for any real code
2009-11-09 07:35:08 +01:00
79d5e49a74 defined basic session lifecycle and service access. Closes Ticket #400 2009-11-09 05:21:59 +01:00
043d4f42fa working example implementation of the access mechanism to session internal APIs 2009-11-09 02:08:37 +01:00
2765981db9 build a complete simplified mock Session/SessionManager 2009-11-08 20:13:11 +01:00
f1ce05ea9d clean up some overly clever definitions 2009-11-08 19:47:51 +01:00
aaf19f4d89 First draft regarding the access of session implementation services (Ticket #400) 2009-11-07 19:49:29 +01:00
6dbbc54247 document better how SingletonRef works 2009-11-07 17:37:37 +01:00
78f9b2b1c5 WIP refactor ContentsQuery to share implementation with a PathQuery facility 2009-11-07 02:49:55 +01:00
bdb8bc2c98 move PlacementIndex into namespace session 2009-11-06 19:27:53 +01:00
bb8c018214 integrate QueryFocus with the new ContentsQuery facility 2009-11-06 18:42:15 +01:00
e0e9b7c2c0 WIP about how to link the QueryFocus system to the session/PlacementIndex 2009-11-04 04:56:25 +01:00
8c7727704c Finish ContentQuery definition; relying on PlacementIndex 2009-11-02 07:37:15 +01:00
1c72cbb599 Iterator tools: (1) a filtering iterator 2009-11-02 06:06:43 +01:00
356fe8fd13 change the ContensQuery stub to fit into the QueryResolver in its current form
Actually, the implementation within PlacementIndex is missing.
Moreover, I think now that PlacementIndex shouldn't implement
QueryResolver directly.
2009-11-01 03:47:35 +01:00
2620c38ed9 documentation, close some tickets... 2009-11-01 02:02:21 +01:00
9ff7b1eaeb Implement registration of a resolution function. QueryResolver_test pass 2009-10-30 20:33:44 +01:00
f70f8c4e4a implemented the mechanism for dispatch-to-concrete resolution 2009-10-30 18:37:08 +01:00
f35b422316 SubID: add (preliminary) hash impl; unit test pass 2009-10-30 06:50:26 +01:00
df562a186f oops... fix a bug in Literal's hash function 2009-10-30 05:15:26 +01:00
006392f6ea yet another random test helper 2009-10-30 03:53:51 +01:00
ceb4d4b5ea reworked MultiFact passes unit test. Closes Ticket #376 2009-10-30 00:32:26 +01:00
1dccd37c70 re-order MultiFact implementation to get it to compile 2009-10-29 22:00:17 +01:00
d2721378d5 get QueryResolver to compile 2009-10-29 21:59:02 +01:00
54aa7b4afe WIP fixes and stubbing to get at compiling the MultiFact 2009-10-29 04:32:00 +01:00
3145064a21 change IterAdapter iteration control API to use free functions 2009-10-29 04:31:16 +01:00
0cef067c11 WIP adapt unit test and the argument-accepting MultiFact specialisation 2009-10-28 04:45:17 +01:00
2530e8c1a1 WIP try to create an extension point to MultiFact, allowing to accept argument(s)
sketch of an idea how to add an extension possibility
without messing up the basic MultiFact template
2009-10-27 05:13:38 +01:00
ec4b2eef00 WIP: test-driven brainstorming: how to build the query dispatcher table? 2009-10-26 01:39:25 +01:00
5968d35cdf WIP maybe resolved now the knot in my design...? 2009-10-25 21:39:02 +01:00
5d9671cb2c WIP place a ref-count into the result iterator 2009-10-25 16:18:53 +01:00
c3441ac26a WIP Query<TY> implementation draft... 2009-10-24 00:23:22 +02:00
452e1bb727 WIP draft an unit test detailing QueryFocus operation 2009-10-20 05:34:58 +02:00
f01da49955 WIP planning the operations needed on QueryFocus 2009-10-20 04:31:50 +02:00
f0c9beb5c6 WIP design the ScopePath API by unit test 2009-10-18 19:08:21 +02:00
474c293197 first shot at Ticket #355: use a default-constructed "invalid" PlacementRef
Making PlacementRef default constructible this way
would resolve the immediate problems; as any access
goes through an index lookup and thus will throw.
The bool check on this special ref yields false,
so this solution seems to fill the bill.
2009-10-18 01:30:43 +02:00
2e62a3b01b WIP continue design how to discover session contents 2009-10-17 21:31:03 +02:00
2ca89010d1 introduce pointer-to-PlacementIndex typedef 2009-10-17 21:29:16 +02:00
b03577ea3f document the stipulations lib::IterAdapter puts on his parameter types 2009-10-17 15:40:37 +02:00
3b1301be14 WIP stubbed some of the operations to implement on class Scope 2009-10-17 02:16:19 +02:00
cfc17e75ba refined and clarified planning of Scope and QueryFocus 2009-10-16 21:20:30 +02:00
9451a6888f start definition of new session::Scope interface 2009-10-16 03:13:57 +02:00
edbd54b062 Initial planning regaring the QueryFocus 2009-10-14 05:48:24 +02:00
193fd2d66b Start the new Session structure with Timeline and Sequences 2009-10-14 05:39:49 +02:00
cd51e5fef0 Proc Command handling frontend finished and usable for now
Additional convenience shortcuts and a bit of polishing.
Closes Ticket #300
2009-10-11 05:57:46 +02:00
c6d5f8a0b4 Proc Command framework: *first integraton round finished* 2009-10-11 05:57:46 +02:00