Difference between revisions of "API Expand.MacroName"

From Flowcode Help
Jump to navigationJump to search
(XML import of updated API docs)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MacroName'''
 +
|-
 +
| colspan="2" | Expands a string to the name of a macro used in the generated code 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
 +
| width="90%" | Source
 +
|-
 +
| colspan="2" | The macro name to expand 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE
 +
| width="90%" | Owner
 +
|-
 +
| colspan="2" | A component that owns the macro 
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
<sidebar>API contents</sidebar>
+
==Detailed description==
Expands a string to the name of a macro used in the generated code
+
This takes a macro name owned by the specified ''Owner'' component and returns the name of the macro as it would be added to the downloaded code. For example the macro ''TestMacro'' may be expanded to <tt>FCD_PARENT_OBJECT_TESTMACRO</tt>.
  
<div style="width:25%; float:right" class="toc">
 
====Class hierarchy====
 
[[API Expand|Expand]]
 
:[[API Expand|MacroName]]
 
</div>
 
__TOC__
 
  
==Parameters==
+
This should only be called during compilation if it is to match up with the generated code as compilation will calculate the static linkage of a macro at this point (a component may be redirected to some pre-existing and identical function generated by some other component in order to save space on the target).
[[Variable Types|STRING]] ''Source''
 
:The macro name to expand
 
 
 
[[Variable Types|HANDLE]] ''Owner''
 
:A component that owns the macro
 
:''The default value for this parameter is: '''''this'''
 
 
 
 
 
==Return value==
 
[[Variable Types|STRING]]
 
 
 
''<span style="color:red;">No additional information</span>''
 
 
 
 
 
==Detailed description==
 
''<span style="color:red;">No additional information</span>''
 
  
  
Line 34: Line 33:
 
* Declare a variable 'result' of type STRING
 
* Declare a variable 'result' of type STRING
 
* Add to a calculation icon: <pre class="brush:[cpp]">result = ::Expand.MacroName("source", owner)</pre>
 
* Add to a calculation icon: <pre class="brush:[cpp]">result = ::Expand.MacroName("source", owner)</pre>
 
''<span style="color:red;">No additional examples</span>''
 

Latest revision as of 11:55, 16 January 2023

Fc9-comp-macro.png MacroName
Expands a string to the name of a macro used in the generated code 
Fc9-string-icon.png - STRING Source
The macro name to expand 
Fc9-h32-icon.png - HANDLE Owner
A component that owns the macro 
Fc9-string-icon.png - STRING Return


Detailed description

This takes a macro name owned by the specified Owner component and returns the name of the macro as it would be added to the downloaded code. For example the macro TestMacro may be expanded to FCD_PARENT_OBJECT_TESTMACRO.


This should only be called during compilation if it is to match up with the generated code as compilation will calculate the static linkage of a macro at this point (a component may be redirected to some pre-existing and identical function generated by some other component in order to save space on the target).


Examples

Calling in a calculation

  • Declare a variable 'result' of type STRING
  • Add to a calculation icon:
    result = ::Expand.MacroName("source", owner)