You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(33) |
Nov
(51) |
Dec
(134) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(18) |
Feb
(11) |
Mar
(1) |
Apr
(55) |
May
(29) |
Jun
(1) |
Jul
(2) |
Aug
(5) |
Sep
(4) |
Oct
|
Nov
|
Dec
(6) |
2004 |
Jan
(1) |
Feb
(11) |
Mar
(4) |
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
(27) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Andre B. <and...@gm...> - 2003-02-15 13:54:35
|
Hello together, I just checked in the EclipsePlugin to the repository. Have fun with it - a compiled version is placed for testing in the BIN directory. Simply copy the complete subdirectory into the PLUGIN/ direcrtory of your eclipse installation. -- Andre |
From: Andre B. <and...@gm...> - 2003-02-15 12:47:29
|
I'm currently debugging the eclipse plugin and found out a problem with the DLL usage of the parser. I'm instanciating the 'RenameLocalVariableClass' and calling 'getOldVariableName'. This passes a String from the DLL to the PluginDLL. Both DLLs are using different Heaps ofcourse, and for this reason the destructor of the passed string does not point to the Local-Heap of the PluginDLL and the DebugAssertions do report an error. The Plugin runs fine, but the passing of a pointer across DLL borders is not correct, isn't it ? Does the same thing happen to VC6addin ? I'm currently thinking about linking the RFTA & RFTA_PARSER Library directly to the PluginCode. Any suggestions will help... -- Andre |
From: Andre B. <and...@gm...> - 2003-02-07 23:10:01
|
Hello, EclipsePlugin now works for 'RenameLocalVariable'. I managed to put the Refactoring-Action into a Popup-Menu for CPP-Files and to create a toolbar with the same icons as in VisualStudio. Activating UNDO after a refactoring does undo all replacements in one step. Luckyly also TABs are no problem since Eclipse provides a character based text selection interface (no line numbers or columns here!). However, a restructuring of the source code in CPP and JAVA is needed before checkin to sourceforge. If anybody wants, I can send you a ZIP containing the plugin in its current version. Restructuring will be done next week. -- Andre |
From: Rohith R. <man...@ho...> - 2003-02-06 04:02:47
|
>From: Andre Baresel <and...@gm...> >That's nice to hear, because testing this makes much sence ! >EclipseBridge does now work, Dialogs and DLL/Library handling are still >open isuess. >I don't want to publish something until I got this working ;-). Just let me know when you want me to start testing. Thanks, Rohith. _________________________________________________________________ Protect your PC - get McAfee.com VirusScan Online http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963 |
From: Andre B. <and...@gm...> - 2003-02-05 12:37:02
|
Rohith Rajagopal wrote: > Good stuff!! I'd be glad to volunteer as a tester for solaris. The > least I can do, since I haven't had any time at all to develop any of it. > Thanks, > Rohith. That's nice to hear, because testing this makes much sence ! EclipseBridge does now work, Dialogs and DLL/Library handling are still open isuess. I don't want to publish something until I got this working ;-). > > Andre wrote: >> I just managed to write the first plugin connected to our refactoring >> code. >> However I still have to implement the full TextDocument Interface >> and to figure out a way to show dialogs in Eclipse for asking the user >> for activities. For this I plan to look at the refactoring >> implementation >> comming with Eclipse-JavaPlug... >> >> Well, It's nice to see this working not only in VC ;-) >> -- Andre |
From: Rohith R. <man...@ho...> - 2003-02-05 05:39:05
|
Good stuff!! I'd be glad to volunteer as a tester for solaris. The least I can do, since I haven't had any time at all to develop any of it. Thanks, Rohith. >From: Andre Baresel <and...@gm...> >Reply-To: and...@gm... >To: CppTool Mailing List <Cpp...@li...> >Subject: [Cpptool-develop] Status EclipsePlugIn ... >Date: Tue, 04 Feb 2003 13:48:03 +0100 > >Hello, > >I just managed to write the first plugin connected to our refactoring code. >However I still have to implement the full TextDocument Interface >and to figure out a way to show dialogs in Eclipse for asking the user >for activities. For this I plan to look at the refactoring implementation >comming with Eclipse-JavaPlug... > >Well, It's nice to see this working not only in VC ;-) > >A lot of exception/error handling is also open. > >-- André _________________________________________________________________ Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?page=features/junkmail |
From: Andre B. <and...@gm...> - 2003-02-04 23:21:40
|
Baptiste Lepilleur wrote: >Excellent! Do you know how well adopted is Eclipse as a C++ environment for >Unix ? > On the project web page I found versions for: "linux-gtk", "linux-motif", "solaris-motif". See http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/cdt-home/downloads/main.html?cvsroot=Tools_Project I expect that the installation is as simple as under win-os. Unpack eclipse, Unpack the "CDT"-Plugin into the plugin directory. Run eclipse. When I finished the plugin maybe one of you can try to do the porting of the eclipse bridge. This are only a couple of lines of code. Currently the java code asks for the "cpprefactoring.dll" which is windows only, but I will provide links how to do the same thing under unix. >I read that Eclipse's java refactoring plug-in actually support undo => all >sources are reversed by doing a simple undo. It might also be interesting to >look into that. > Currently I'm only doing changes to one document and Yes, It's indeed provided by the "IRewriteTarget" interface I use. There're two operations 'beginCompoundChange' and 'endCompoundChange'. All activities happen between will be taken as one operation and undo does set them back in one step. Maybe there's another Interface for compound project changes... -- Andre |
From: Baptiste L. <gai...@fr...> - 2003-02-04 22:37:31
|
Excellent! Do you know how well adopted is Eclipse as a C++ environment for Unix ? I read that Eclipse's java refactoring plug-in actually support undo => all sources are reversed by doing a simple undo. It might also be interesting to look into that. I'm currently working on the CodeRewritter, and more specifically trying to deal with inserting a new statement in a composite. This is somewhat tricky, because you need to figure out were the new text need to be inserted... Baptiste. ----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "CppTool Mailing List" <Cpp...@li...> Sent: Tuesday, February 04, 2003 1:48 PM Subject: [Cpptool-develop] Status EclipsePlugIn ... > Hello, > > I just managed to write the first plugin connected to our refactoring code. > However I still have to implement the full TextDocument Interface > and to figure out a way to show dialogs in Eclipse for asking the user > for activities. For this I plan to look at the refactoring implementation > comming with Eclipse-JavaPlug... > > Well, It's nice to see this working not only in VC ;-) > > A lot of exception/error handling is also open. > > -- André |
From: Andre B. <and...@gm...> - 2003-02-04 12:46:57
|
Hello, I just managed to write the first plugin connected to our refactoring code. However I still have to implement the full TextDocument Interface and to figure out a way to show dialogs in Eclipse for asking the user for activities. For this I plan to look at the refactoring implementation comming with Eclipse-JavaPlug... Well, It's nice to see this working not only in VC ;-) A lot of exception/error handling is also open. -- André |
From: Andre B. <and...@gm...> - 2003-02-01 21:22:46
|
hello, after some hours reading the docs of eclipse and trying the example codes I finally found the entry point to plugin our refactoring stuff. I already managed to write a plugin for changing a editor text (cutting text and moving the selection). Next thing that has been done was exploring how to use the Java Native Interface .. this was not to complicated (however, it was new to me). Next week I will try to integrate these things. My plan is to use the "TextDocument" class as Interface between the JavaCode (responsible for TextChanges ... selection, text replace) and the RFTA code (refactoring routines). If no problem occures I expect a first plugin version in the end of next week, -- until then, Andre |
From: Baptiste L. <gai...@fr...> - 2003-01-31 22:13:07
|
I've found a couple of bugs while using the add-in. They have been added to the todo: a.. [High] Bug: The code analysis failed to recognize a local variable occurrence. a.. Details: // Fails to recognize the last occurrence of bigBuffer as a local variable { std::vector<int> bigBuffer; { KTEST_ASSERT_EQUAL( index, bigBuffer[index] ); } } This file can be found in bug/LocaleVariableNotRecognized?.cpp. The is a unit test for it: IdentifierResolverTest?::testBug1() a.. Solutions: seems to be related to the existence of the inner CompoundStatement? (recognized correctly if removed). b.. Status: to do a.. [High] Bug: VC6 add-in crash when analysing the source bug/ParserCrash?.cpp. a.. Details: // Crash when trying to rename the last occurrence of bigBuffer. (from the add-in, seems to be in the IdentifierResolver?). { const int bufferSize = 256000; std::vector<int> bigBuffer; bigBuffer.reserve( bufferSize ); for ( int index =0; index < bufferSize; ++index ) bigBuffer[ index ] = 0; const char *byteBuffer = (char *)&bigBuffer[0]; int recievedLength = 0; int totalLength = sizeof(int) * bufferSize; KTEST_ASSERT_EQUAL( index, bigBuffer[index] ); } a.. Solutions: ? b.. Status: to do Notes: even though the second bug was constated while using the add-in, the crash occurred during code analysis in IdentifierResolver. Baptiste. |
From: Baptiste L. <gai...@fr...> - 2003-01-31 22:08:03
|
----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "Sven Reichard" <rei...@ma...>; "CppTool Mailing List" <Cpp...@li...> Sent: Friday, January 31, 2003 4:47 PM Subject: Re: [Cpptool-develop] apologies >[...] > > > >I'll read what you wrote about the FullParser stuff. I would increase its > >priority to medium, since it is necessary for a Linux interface (in its > >current design). Could you explain why ? From what I understood, it just works like a separate application to which you pass the file and the selection. > I also think the priority of this task should be increased. However, we > should also prepare some > release before adding functionality (e.g. an installable plugin for > visual studio). To show the world, > that there's something comming up. Yes, that would be nice. Baptiste. > [...] > until later > -- André |
From: Baptiste L. <gai...@fr...> - 2003-01-31 22:04:37
|
----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "Sven Reichard" <rei...@ma...>; "CppTool Mailing List" <Cpp...@li...> Sent: Friday, January 31, 2003 4:47 PM Subject: Re: [Cpptool-develop] apologies > Sven Reichard wrote: > > >Since the CodeGenerator code isn't used yet, I don't really understand it. > >I'll try to work on it. > > > I think I understood the main idea by anlysing the tests written by > Baptiste. > In the tests the code generator is used in the following way: > > - Parse a code to an AST (lazy parsing as used in the Refactoring code) > - Transform the AST to Code-Elements like if-statement/for-statement > etc. (for each programming > element there is a class > - Code-Elements are used to rewrite the code in a textual form > (formatting stuff). > > For me it seems to be a transformation between the AST-representation > and a new CodeGenerator > representation. This codegeneration representation can be used for > formatting. Yes, that's it. See the very basic example in CodeWriterTest::testRewriteStatement(). It will be use for formatting, but also for refactoring. On difficult issue when doing some refactoring like IntroduceExplainingVariable and ReduceTemporaryScope is that you need to introduce a new statement next to another existing one. Doing so may require adding a compound statement, which is very 'context dependent' (is it within a switch/case,a for, a if/then/else...) Baptiste. > [...] |
From: Baptiste L. <gai...@fr...> - 2003-01-31 21:42:52
|
----- Original Message ----- From: "Sven Reichard" <rei...@ma...> To: "CppTool Mailing List" <Cpp...@li...> Sent: Thursday, January 30, 2003 5:35 PM Subject: [Cpptool-develop] apologies > Hi Guys, > > my sincere apologies for keeping silent for a month. The fact is, I was > really busy with high priority projects here. I will see what has been > done over this period, and then get back into the game. Do you have > anything OS-independent on the ToDo list? Well, I've been fairly busy myself for the last 3 weeks. Not much has happen since then. Baptiste. > > Later, > Sven. > > -- > Sven Reichard > Dept. of Math. Sci. > University of Delaware > rei...@ma... |
From: Andre B. <and...@gm...> - 2003-01-31 15:46:13
|
Sven Reichard wrote: >Since the CodeGenerator code isn't used yet, I don't really understand it. >I'll try to work on it. > I think I understood the main idea by anlysing the tests written by Baptiste. In the tests the code generator is used in the following way: - Parse a code to an AST (lazy parsing as used in the Refactoring code) - Transform the AST to Code-Elements like if-statement/for-statement etc. (for each programming element there is a class - Code-Elements are used to rewrite the code in a textual form (formatting stuff). For me it seems to be a transformation between the AST-representation and a new CodeGenerator representation. This codegeneration representation can be used for formatting. > >I'll read what you wrote about the FullParser stuff. I would increase its >priority to medium, since it is necessary for a Linux interface (in its >current design). > I also think the priority of this task should be increased. However, we should also prepare some release before adding functionality (e.g. an installable plugin for visual studio). To show the world, that there's something comming up. Btw) I checked again the eclispe C++ plugin especially for the refactoring functionality. The only thing I found, was some dicussion on using an open source c++ parser... well that's not really far, I will check periodicly what's going on over there. until later -- André |
From: Sven R. <rei...@ma...> - 2003-01-31 14:49:43
|
Andre, I know that the SplitTemp code is buggy, it was just a quick prototype. I still need to figure out what exactly I want it to do... There are a couple of issues related to assignments in subscopes; they can be split if the variable isn't used after the subscope (because of a return statement, e.g.), but that's a bit hard to detect. I will try to move the code to the safe side, i.e., just perform the refactoring if we know it is legal. Since the CodeGenerator code isn't used yet, I don't really understand it. I'll try to work on it. I'll read what you wrote about the FullParser stuff. I would increase its priority to medium, since it is necessary for a Linux interface (in its current design). More later, Sven. -- Sven Reichard Dept. of Math. Sci. University of Delaware rei...@ma... |
From: Andre B. <and...@gm...> - 2003-01-30 18:30:41
|
Sven Reichard wrote: >Hi Guys, > >my sincere apologies for keeping silent for a month. The fact is, I was >really busy with high priority projects here. I will see what has been >done over this period, and then get back into the game. Do you have >anything OS-independent on the ToDo list? > >Later, >Sven. > > > Hi there, it was the same for me. I'm currently trying to write an Eclipse-Plugin for the refactoring methods. Btw) The C++ Plugin for eclipse plannes some refactoring code, but they are really in the early stage of viewing/editing c++ code and there're many tasks on their 'to do' lists. We will see how much manpower will be spend on this plugin (IBM and Rational are part of this project). It is opensource, but Java based. What I try to do, is to write a Plugin for eclipse to act as bridge to our refactoring code. However I'm not familar with the PlugIn-Interfaces of Eclipse and I've no experiences with the Java Native Interface (planned as integration point). I had another interessting discussion with Baptiste on the FullParser-Implementation. Some results are written in the Wiki. Maybe that's something to continue with. Another point is the CodeGenerator stuff created by Baptiste. It's not yet used by the refactoring methods - maybe continue here ? Last but not least some "bugs" are still open. Btw) Sven - what do you think about using the Bug/Featuretracking capabilities of SourceForge ? I believe the Feature/Bug list provided by SF gives a better overview than the WiKi todo list. Isn't it ?-- maybe the wiki ToDo's could be used as global future oriented and the SF- Bug/Feature List as list of small tasks for the near future. Well, it's time to do something, André |
From: Sven R. <rei...@ma...> - 2003-01-30 16:36:01
|
Hi Guys, my sincere apologies for keeping silent for a month. The fact is, I was really busy with high priority projects here. I will see what has been done over this period, and then get back into the game. Do you have anything OS-independent on the ToDo list? Later, Sven. -- Sven Reichard Dept. of Math. Sci. University of Delaware rei...@ma... |
From: Andre B. <and...@gm...> - 2003-01-19 20:31:51
|
I'm still there, but heavily involved in my business until wednesday. I used some free minutes to download the eclipse environment for installation and check how the plug-in mechanism does work. I'll start doing this at the end of the week ... -- Andre |
From: Andre B. <and...@gm...> - 2003-01-09 21:15:25
|
Baptiste Lepilleur wrote: >Well, one I can think of: How do I see the new toolbar buttons ? >=> desactivate/reactive the add-in in the Tools/Customize... dialog. > yes. > >Also, the big block of code that is copied should really be extracted in a >method... > If done this now. yes indeed the code looked worse ... Also changed the text file descibing what to do. >I've tested the InlineTempRefactoring and it works very well !!! > > Thx, my papers are going well ... for this reason I'm using a little time to look whats going on and doing some fixes. until later -- Andre |
From: Baptiste L. <gai...@fr...> - 2003-01-08 18:47:20
|
----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "CppTool Mailing List" <Cpp...@li...> Sent: Tuesday, January 07, 2003 8:00 PM Subject: Re: [Cpptool-develop] Expression parsing > Baptiste Lepilleur wrote: > > >I doubt this can be done correctly because of template: > > > >namer<string , comon_naming_traits>( firstName, lastName ) > >=> there is no way to know if namer is a template or no. > > > ok, just to understand the example -- this expression could be a > function call to a templated function ? Yes. Any templates with multiple parameters will be wrongly splitted, but as I said this is not an issue at the current time, just something we should be aware of. Baptiste. > > -- Andre |
From: Andre B. <and...@gm...> - 2003-01-07 19:00:42
|
Baptiste Lepilleur wrote: >I doubt this can be done correctly because of template: > >namer<string , comon_naming_traits>( firstName, lastName ) >=> there is no way to know if namer is a template or no. > ok, just to understand the example -- this expression could be a function call to a templated function ? -- Andre |
From: Baptiste L. <gai...@fr...> - 2003-01-07 09:38:53
|
Andre, you forgot to add/commit the file "RftaInlineLocalVarDialog.h" in the vc6 add-in. Could you fix that ? Thanks, Baptiste. ----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "CppTool Mailing List" <Cpp...@li...> Sent: Monday, December 30, 2002 11:51 AM Subject: [Cpptool-develop] Bugfix in InlineTemp and VC6addin extended > VC6 Addin has been extended, now it supports also InlineTemp and SplitTemp. > I also redesigned the Icons for the three supported actions, If you > don't like the Icons > you will find the old versions in the Resourcefile. > Since Icons are not always nice to use I would suggest that we also add > a command that > opens a Popup-Window with a Menu of all supported AddinCommands in > textual form. > With this the user could set up a key that calls the popup-command and > than select the action > he wants to perform. > > -- Andre > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Cpptool-develop mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cpptool-develop > > |
From: Baptiste L. <gai...@fr...> - 2003-01-07 08:45:36
|
----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "Baptiste Lepilleur" <gai...@fr...>; "CppTool Mailing List" <Cpp...@li...> Sent: Friday, December 27, 2002 9:13 PM Subject: Re: [Cpptool-develop] Expression parsing > Baptiste Lepilleur wrote: > [...] > Well I was stepping down the EBNF of the C++ syntax which can be found > e.g. in the MSDN. > Expressions start with expression-list. > expression-list-elements are assignment-expressions. (Can be easily > detected by comma and balanced braces) > assignment-expression can be: > conditional-expression "a ? 1 : 0 " > throw-expression "throw <whatever>" > [term] assignment-operator [term] ...Can > be detected by searching for assignment-operators (a list!) and balanced > braces Beware of EBNF naming in the standard. They often put name in their rule that as little to see with the actual content. The above rule should probably be named something like 'expression-with-same-priority-as-assignment'. > >I would extend the ExpressionMutator to detect the token '=' and check that > >the expression starts with the tokens 'identifier, assign-op', and in that > >case mutate to a locale-variable-assignement-expression and do the required > >processing for that kind of node. > > > As I did - but I added also the detection of surrounding expression list > since with this we can also handle > the following example and all expression that use the expression list > operator ',' : > > a = 0, b = 10; I doubt this can be done correctly because of template: namer<string , comon_naming_traits>( firstName, lastName ) => there is no way to know if namer is a template or no. On the other hand, since we are only using this to detect assignation, I guess that we can live with this (I don't think assignation are possible in template parameters). Baptiste. > > -- Andre |
From: Baptiste L. <gai...@fr...> - 2003-01-07 08:37:31
|
----- Original Message ----- From: "Andre Baresel" <and...@gm...> To: "Baptiste Lepilleur" <gai...@fr...> Sent: Friday, December 27, 2002 8:57 PM Subject: Re: [Cpptool-develop] Progress on InlineTemp > Baptiste Lepilleur wrote: > > >----- Original Message ----- > >From: "Andre Baresel" <and...@gm...> > >To: "CppTool Mailing List" <Cpp...@li...> > >Sent: Friday, December 27, 2002 11:38 AM > >Subject: [Cpptool-develop] Progress on InlineTemp > > [...] > >I don't get what you mean. Do you mean if the variable is initialized by a > >constructor ? > > > nope this will be detected as not allowed at the moment since it > contains an identifier. > However just two examples: > > int tmpTobeInlined = 3; > expr = tmpTobeInlined * 5; > ==> Here we have no problem just replacing the tmpToBeInlined by its > initializer resulting in: > expr = 3 * 5; > > But what about: > int tmpTobeInlined = 3 + 3; > expr = tmpTobeInlined * 5; > ==> Here we have to add braces for the expression "3 + 3" resulting in: > expr = (3 + 3) * 5; OK, I understand what you mind. That the kind of stuff you don't see until you tackle the refactoring. > For that reason I'm currently adding allways braces which doesn't look > very nice for most usecases I believe: > expr = ( 3 ) * 5; > With some Code-Rewriter that knowns about minimal placement of braces > that would be no problem. I don't believe removing the braces should be done after. It would be very tricky to distinguish between brace added by the user for clarity and those added by the tool. There should be a way to say weither or not the braces are required, though it promise to be tricky anyway. > I was just thinking about an heuristic for the decision of placing > braces: > Just check if any c++ operator occures in the blanked text of the > initializer. If it does, I will place braces, if not > I leave it as it is. This sound good. Baptiste. > > -- Andre |