API reference - Class MacroNotation used in Ruby API documentation Description: A macro class This class is provided mainly to support generation of template macros in the DSL interpreter framework provided by MacroInterpreter. The implementation may be enhanced in future versions and provide access to macros stored inside KLayout's macro repository. Public constructors
Public methods
Detailed description[const] string categoryDescription: Gets the category tags The category tags string indicates to which categories a macro will belong to. This string is only used for templates currently and is a comma-separated list of category names. void category=(string string)Description: Sets the category tags string See category for details. void createDescription: Ensures the C++ object is created Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created. [const] string descriptionDescription: Gets the description text The description text of a macro will appear in the macro list. If used as a macro template, the description text can have the format "Group;;Description". In that case, the macro will appear in a group with title "Group". void description=(string description)Description: Sets the description text
See description for details. void destroyDescription: Explicitly destroy the object Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing. [const] bool destroyed?Description: Returns a value indicating whether the object was already destroyed This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself. [const] string epilogDescription: Gets the epilog code The epilog is executed after the actual code is executed. Interpretation depends on the implementation of the DSL interpreter for DSL macros. void epilog=(string string)Description: Sets the epilog See epilog for details. [const] string group_nameDescription: Gets the menu group name If a group name is specified and show_in_menu? is true, the macro will appear in a separate group (separated by a separator) together with other macros sharing the same group. void group_name=(string string)Description: Sets the menu group name See group_name for details. [const] bool is_const_object?Description: Returns a value indicating whether the reference is a const reference This method returns true, if self is a const reference. In that case, only const methods may be called on self. [const] string menu_pathDescription: Gets the menu path If a menu path is specified and show_in_menu? is true, the macro will appear in the menu at the specified position. void menu_path=(string string)Description: Sets the menu path See menu_path for details. [static] Macro newDescription: Creates a new object of this class [const] string pathDescription: Gets the path of the macro The path is the path where the macro is stored, starting with an abstract group identifier. The path is used to identify the macro in the debugger for example. [const] string prologDescription: Gets the prolog code The prolog is executed before the actual code is executed. Interpretation depends on the implementation of the DSL interpreter for DSL macros. void prolog=(string string)Description: Sets the prolog See prolog for details. void show_in_menu=(bool flag)Description: Sets a value indicating whether the macro shall be shown in the menu [const] bool show_in_menu?Description: Gets a value indicating whether the macro shall be shown in the menu [const] string textDescription: Gets the macro text The text is the code executed by the macro interpreter. Depending on the DSL interpreter, the text can be any kind of code. void text=(string string)Description: Sets the macro text See text for details. |