This chapter explains how to build your own aspects. If you only want to learn how to use aspects written by others, you can skip this chapter in first reading. However, we suggest you to come back here if you want to understand better the "magic" behind Caravela.
This chapter is structured as follows: first we give a few tricks to get started quickly with a smooth learning curve. Then we introduce you to the theory and design of the aspect framework, so you can leverage its complete power. We suggest you don't stop at the simplified getting started API even if you quickly solve your problem at-hand because you may be able to find a better solution with a deeper understanding of the framework.
|Creating Simple Aspects||This section explains how to create simple aspects with a familiar object-oriented API and without much theory.|
|Design of Caravela Aspect Framework||This article gives the theory behind the Caravela aspect framework.|
|Writing code templates||This article explains how to create dynamic code templates.|
|Reporting and suppressing diagnostics||This article explains how to report or suppress errors, warnings and information messages.|
|Advising Code||This section explains how to create aspects that perform advanced code modifications using the complete API.|
|Ordering Aspects||This article describes how to order aspect classes so that the order of execution is correct when several aspects are applied to the same declaration.|
|Testing aspects||This section explains how to test aspects.|
|Debugging Aspects||This article explains how to debug aspects.|
|Creating a Live Template||This article explains how to create a live templates, which modifies the source code in the editor.|