[nem-en] Screenshot from MonoDevelop

Alejandro Serrano trupill at yahoo.es
Thu Mar 2 16:45:17 CET 2006


Michal Moskal escribió:
> On 3/1/06, Alejandro Serrano <trupill at yahoo.es> wrote:
>   
>> I'm still working on the Code Completion Engine, and it is far from
>> complete, but as of now, my local NemerleBinding for MonoDevelop shows
>> the Type Tree
>>     
>
> I thinks is great!
>   
Thanks :-)
>   
>> (although sometimes it crashes, but just close and open
>> and everything works again).
>>     
>
> Have you any idea where the crashes come from? Is it Nemerle compiler
> what's failing or the MD?
>   
At first I has a problem in WarningOptions.IsEnabled. It threw an 
exception during Clean(), so the type wasn't initialized correctly. Just 
changing IsEnabled to be wrapped inside a try/catch block was a good 
solution (I would  have commited it yet, but I don't know what should I 
do now a optimizer branch has been created, because the change is in 
CopilationOptions.n).
The other problem at this stage is that when a code is not completely OK 
(for example, when you write "public class Foo {"), this is thrown:

System.ArgumentException: GetName () called for option 
Nemerle.Compiler.Parsetree.Splicable+Expression
in <0x00090> Nemerle.Compiler.Parsetree.Splicable:GetName ()
in <0x00010> Nemerle.Compiler.Parsetree.DeclarationBase:get_ParsedName ()
in <0x00030> Nemerle.Compiler.ScanTypeHierarchy:ProcessDeclaration 
(Nemerle.Compiler.Parsetree.TopDeclaration decl)
in <0x0000a> Nemerle.Completion.Engine+_N_static_proxy68391:apply_void 
(Nemerle.Compiler.Parsetree.TopDeclaration _N_sp_parm68398)
in <0x00085> Nemerle.Collections.List:Iter[TopDeclaration] 
(Nemerle.Core.list`1 l, Nemerle.Builtins.FunctionVoid`1 f)
in <0x0076f> Nemerle.Completion.Engine:GetTypeTree ()

The problem is not the exception, but the fact that lexing may be 
interrupted and so the Type Tree creation.

If there's no problem with the change in CompilationOptions.n, I'll post 
the code to SVN. Also, I'll try to make the plug-in a bit more usable 
and try to post it, but I have to tell that you will need the latest 
MonoDevelop from SVN, with the latest Cecil (or at least version 0.2) in 
the contrib/ folder and compiled with gmcs instead of mcs.

Trupill

		
______________________________________________ 
LLama Gratis a cualquier PC del Mundo. 
Llamadas a fijos y móviles desde 1 céntimo por minuto. 
http://es.voice.yahoo.com




More information about the devel-en mailing list