KDevPlatform ruby extension progress
Andreas Pakulat
apaku at gmx.de
Sat Jun 7 20:05:41 UTC 2008
On 07.06.08 18:13:36, Richard Dale wrote:
> I've checked in a kdevplatform Smoke library and a ruby extension that uses
> it, into kdebindings/smoke/kdevplatform and kdebindings/ruby/kdevplatform
> respectively. There are over 125 KDevelop:: and Sublime:: classes wrapped,
> although I still need to add the list marshallers for the Ruby extension
> (that shouldn't take long).
>
> The following classes gave problems with either the code generation or
> linking and weren't wrapped:
>
> KDevelop::BackgroundParser
That might be needed for language supprt
> KDevelop::ContextOwner
That one too.
> KDevelop::Definition
That doesn't exist anymore.
> KDevelop::IBuildSystemManager
only for buildsystem stuff
> KDevelop::IDocumentController
That one is probably needed too, for example for opening a file...
> KDevelop::IPluginController
Not for a ruby language plugin.
> KDevelop::IProject
> KDevelop::IProjectBuilder
> KDevelop::IProjectFileManager
Probably also not needed.
> KDevelop::IQuickOpen
That one might be needed, but I don't know the quick-open stuff too
well.
> KDevelop::IRunProvider
> KDevelop::IStatus
I don't think these are needed.
> KDevelop::DUContext::SearchItem
> KDevelop::DUChainObserver
I'm not sure about the latter here, might be needed for some stuff.
> KDevelop::QuickOpenFileSetInterface
>
> I hope that none of these will be a showstopper WRT developing a Ruby
> language plugin in Ruby. I wonder if the use of threading with ThreadWeaver
> is going to be a problem with Ruby as it isn't threadsafe. Perhaps as long
> as Ruby code is only ever running in one thread it will be ok.
Its possible to limit the parser to one thread, but that thread still is
not the GUI thread and part of the code in a language plugin will run in
the GUI thread (while another part runs in the parser thread). Then
again I'm not sure what "not threadsafe" means in this context as the
ruby plugin would use C++ code that is threadsafe for locking and such
things.
> The vcs headers gave a lot of compile problems and so I've left them out for
> now.
Not that important indeed.
And thanks for the hard work.
--
Slow day. Practice crawling.
More information about the KDevelop-devel
mailing list