| Home » Language IDEs » C / C++ IDE (CDT) » Extensionpoints for the content assists/indexer?
 Goto Forum:| 
| Extensionpoints for the content assists/indexer? [message #108805] | Sun, 04 July 2004 14:27  |  | 
| Eclipse User  |  |  |  |  | Hello, 
 If possible I'd like write a plug for eclipse cdt which can be easily used
 to cross compile sources of AmigaOS4.
 
 The AmigaOS ABI works via so called Interfaces. An interface is a structure
 which contains a lot of function pointers.
 
 E.g. like this:
 
 struct ExecIFace
 
 {
 
 struct InterfaceData Data;
 
 ULONG APICALL (*Obtain)(struct ExecIFace *Self);
 
 ULONG APICALL (*Release)(struct ExecIFace *Self);
 
 void APICALL (*Expunge)(struct ExecIFace *Self);
 
 struct Interface * APICALL (*Clone)(struct ExecIFace *Self);
 
 void APICALL (*AddHead)(struct ExecIFace *Self, struct List * list,
 struct Node * node);
 
 VOID APICALL (*AddMemHandler)(struct ExecIFace *Self,
 struct Interrupt *memHandler);
 
 void APICALL (*AddMemList)(struct ExecIFace *Self, ULONG size,
 ULONG attributes, LONG pri, APTR base, STRPTR name);
 
 void APICALL (*AddTail)(struct ExecIFace *Self, struct List * list,
 struct Node * node);
 
 void * APICALL (*AllocAbs)(struct ExecIFace *Self, ULONG byteSize,
 APTR location);
 
 /* Much more... */
 };
 
 One thing is, that the first pointer of every function is hidden
 (automatically handled by the compiler), when you call the function.
 
 E.g. you call the functions like this
 
 IExec->AddTail(list,node);
 
 (IExec is of type ExecIFace)
 
 
 
 I would like to change the content assist that it doesn't show the first
 paramater. Additional I'd like to add a way to show the description of the
 function. Is it possible to plug in somewhere? If yes, where I can find
 documentation about this? (Can't find anything in the CDT version of 28
 June)
 
 Thanks in advance!
 
 Also I discovered, that function pointers within structures aren't supported
 in the same way like normal function calls. E.g. If I enter "IExec->Add" and
 then press "Alt Space" and then choose AddTail, cdt doesn't seem handle this
 construct as a function call (i.e. it doesn't present the paramters). While
 I think the behaviour is correct (because you could assign a different
 pointer) I think, it should show the paramters after you have entered the
 open bracket.
 
 
 
 Ciao,
 Sebastian
 |  |  |  |  | 
| Re: Extensionpoints for the content assists/indexer? [message #108918 is a reply to message #108805] | Mon, 05 July 2004 08:04  |  | 
| Eclipse User  |  |  |  |  | We have not provided an extension point yet for the parser.  This will come in a later release.
 
 "Sebastian Bauer" <sebauer@t-online.de> wrote in message
 news:cc9i9p$nda$1@eclipse.org...
 > Hello,
 >
 > If possible I'd like write a plug for eclipse cdt which can be easily used
 > to cross compile sources of AmigaOS4.
 >
 > The AmigaOS ABI works via so called Interfaces. An interface is a
 structure
 > which contains a lot of function pointers.
 >
 > E.g. like this:
 >
 > struct ExecIFace
 >
 > {
 >
 >     struct InterfaceData Data;
 >
 >     ULONG APICALL (*Obtain)(struct ExecIFace *Self);
 >
 >     ULONG APICALL (*Release)(struct ExecIFace *Self);
 >
 >     void APICALL (*Expunge)(struct ExecIFace *Self);
 >
 >     struct Interface * APICALL (*Clone)(struct ExecIFace *Self);
 >
 >     void APICALL (*AddHead)(struct ExecIFace *Self, struct List * list,
 >                             struct Node * node);
 >
 >     VOID APICALL (*AddMemHandler)(struct ExecIFace *Self,
 >                                  struct Interrupt *memHandler);
 >
 >     void APICALL (*AddMemList)(struct ExecIFace *Self, ULONG size,
 >                   ULONG attributes, LONG pri, APTR base, STRPTR name);
 >
 >     void APICALL (*AddTail)(struct ExecIFace *Self, struct List * list,
 >                   struct Node * node);
 >
 >     void * APICALL (*AllocAbs)(struct ExecIFace *Self, ULONG byteSize,
 >                   APTR location);
 >
 >     /* Much more... */
 > };
 >
 > One thing is, that the first pointer of every function is hidden
 > (automatically handled by the compiler), when you call the function.
 >
 > E.g. you call the functions like this
 >
 >   IExec->AddTail(list,node);
 >
 > (IExec is of type ExecIFace)
 >
 >
 >
 > I would like to change the content assist that it doesn't show the first
 > paramater. Additional I'd like to add a way to show the description of the
 > function. Is it possible to plug in somewhere? If yes, where I can find
 > documentation about this? (Can't find anything in the CDT version of 28
 > June)
 >
 > Thanks in advance!
 >
 > Also I discovered, that function pointers within structures aren't
 supported
 > in the same way like normal function calls. E.g. If I enter "IExec->Add"
 and
 > then press "Alt Space" and then choose AddTail, cdt doesn't seem handle
 this
 > construct as a function call (i.e. it doesn't present the paramters).
 While
 > I think the behaviour is correct (because you could assign a different
 > pointer) I think, it should show the paramters after you have entered the
 > open bracket.
 >
 >
 >
 > Ciao,
 > Sebastian
 >
 >
 |  |  |  | 
 
 
 Current Time: Fri Oct 31 04:38:02 EDT 2025 
 Powered by FUDForum . Page generated in 0.03351 seconds |