Difference between revisions of "API Expand.MacroName"

From Flowcode Help
Jump to navigationJump to search
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
+
|-
<sidebar>API contents</sidebar>
+
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
Expands a string to the name of a macro used in the generated code
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MacroName'''
 
+
|-
<div style="width:25%; float:right" class="toc">
+
| colspan="2" | Expands a string to the name of a macro used in the generated code&nbsp;
====Class hierarchy====
+
|-
[[API Expand|Expand]]
+
|-
:[[API Expand|MacroName]]
+
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
</div>
+
| width="90%" | Source
__TOC__
+
|-
 
+
| colspan="2" | The macro name to expand&nbsp;
==Parameters==
+
|-
[[Variable Types|STRING]] ''Source''
+
| width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE
:The macro name to expand
+
| width="90%" | Owner
 
+
|-
[[Variable Types|HANDLE]] ''Owner''
+
| colspan="2" | A component that owns the macro&nbsp;
:A component that owns the macro
+
|-
:''The default value for this parameter is: '''''this'''
+
| 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''
 
+
|}
==Return value==
 
[[Variable Types|STRING]]
 
 
 
The full expanded macro name.
 
  
  
Line 30: Line 26:
  
  
This should only be called during compilation if it is to be 100% reliable 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).
+
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).
  
  
Line 37: 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)