[Lldb-commits] [lldb] r251844 - Add a sketched out section on adding Language and LanguageRuntime plugins for language support
Enrico Granata via lldb-commits
lldb-commits at lists.llvm.org
Mon Nov 2 14:26:55 PST 2015
Author: enrico
Date: Mon Nov 2 16:26:55 2015
New Revision: 251844
URL: http://llvm.org/viewvc/llvm-project?rev=251844&view=rev
Log:
Add a sketched out section on adding Language and LanguageRuntime plugins for language support
Modified:
lldb/trunk/www/adding-language-support.html
Modified: lldb/trunk/www/adding-language-support.html
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/www/adding-language-support.html?rev=251844&r1=251843&r2=251844&view=diff
==============================================================================
--- lldb/trunk/www/adding-language-support.html (original)
+++ lldb/trunk/www/adding-language-support.html Mon Nov 2 16:26:55 2015
@@ -37,6 +37,8 @@
<li>Add expression evaluation support</li>
</ul>
</p>
+ <p>
+ Additionally, you may want to create a Language and LanguageRuntime plugin for your language, which enables support for advanced features like dynamic typing and data formatting.
</div>
<div class="postfooter"></div>
</div>
@@ -163,6 +165,27 @@
</div>
<div class="postfooter"></div>
</div>
+
+ <div class="post">
+ <h1 class="postheader">Language and LanguageRuntime plugins</h1>
+ <div class="postcontent">
+ <p>
+ If you followed the steps outlined above, you already have taught LLDB a great deal about your language. And if your language's runtime model and fundamental data types don't differ much from the C model, you are pretty much done.
+ <br/>
+ However, it is likely that your language offers its own data types for things like strings, arrays, ..., and probably has a notion of dynamic types, where the effective type of a variable can only be known at runtime.
+ </p>
+ <p>
+ These tasks are covered by two plugins:
+ <ul>
+ <li>a LanguageRuntime plugin, which provides LLDB with a dynamic view of your language; this plugin answers questions that require a live process to acquire information (e.g. dynamic type resolution)</li>
+ <li>a Language plugin, which provides LLDB with a static view of your language; questions that are statically knoawble and do not require a process are answered by this plugin (e.g. data formatters)</li>
+ </ul>
+ </p>
+ </div>
+ <div class="postfooter"></div>
+ </div>
+ </div>
+
</div>
</div>
</div>
More information about the lldb-commits
mailing list