@@ -2164,25 +2164,15 @@ <h1 id="templates">Templates<a class="headerlink" href="#templates" title="Perma
21642164< h2 id ="walkthrough "> Walkthrough< a class ="headerlink " href ="#walkthrough " title ="Permanent link "> ¶</ a > </ h2 >
21652165< h3 id ="1-your-first-template "> 1. Your First Template< a class ="headerlink " href ="#1-your-first-template " title ="Permanent link "> ¶</ a > </ h3 >
21662166< p > The simplest template maps each collector type to a separate placeholder in the expected order:</ p >
2167- < div class ="highlight "> < span class ="filename "> MyModule.psm1.template</ span > < pre > < span > </ span > < code > < a id ="__codelineno-1-1 " name ="__codelineno-1-1 " href ="#__codelineno-1-1 "> </ a > < span class ="c " > #region Using Statements </ span >
2168- < a id ="__codelineno-1-2 " name ="__codelineno-1-2 " href ="#__codelineno-1-2 "> </ a > < span class =" p " > {{ </ span > < span class =" n " > UsingStatements </ span > < span class =" p " > }} </ span >
2169- < a id ="__codelineno-1-3 " name ="__codelineno-1-3 " href ="#__codelineno-1-3 "> </ a > < span class ="c " > #endregion Using Statements </ span >
2167+ < div class ="highlight "> < span class ="filename "> MyModule.psm1.template</ span > < pre > < span > </ span > < code > < a id ="__codelineno-1-1 " name ="__codelineno-1-1 " href ="#__codelineno-1-1 "> </ a > < span class ="p " > {{ </ span > < span class =" n " > USING_STATEMENTS </ span > < span class =" p " > }} </ span >
2168+ < a id ="__codelineno-1-2 " name ="__codelineno-1-2 " href ="#__codelineno-1-2 "> </ a >
2169+ < a id ="__codelineno-1-3 " name ="__codelineno-1-3 " href ="#__codelineno-1-3 "> </ a > < span class ="p " > {{ </ span > < span class =" n " > ENUM_DEFINITIONS </ span > < span class =" p " > }} </ span >
21702170< a id ="__codelineno-1-4 " name ="__codelineno-1-4 " href ="#__codelineno-1-4 "> </ a >
2171- < a id ="__codelineno-1-5 " name ="__codelineno-1-5 " href ="#__codelineno-1-5 "> </ a > < span class ="c " > #region Enums </ span >
2172- < a id ="__codelineno-1-6 " name ="__codelineno-1-6 " href ="#__codelineno-1-6 "> </ a > < span class =" p " > {{ </ span > < span class =" n " > EnumDefinitions </ span > < span class =" p " > }} </ span >
2173- < a id ="__codelineno-1-7 " name ="__codelineno-1-7 " href ="#__codelineno-1-7 "> </ a > < span class ="c " > #endregion Enums </ span >
2171+ < a id ="__codelineno-1-5 " name ="__codelineno-1-5 " href ="#__codelineno-1-5 "> </ a > < span class ="p " > {{ </ span > < span class =" n " > CLASS_DEFINITIONS </ span > < span class =" p " > }} </ span >
2172+ < a id ="__codelineno-1-6 " name ="__codelineno-1-6 " href ="#__codelineno-1-6 "> </ a >
2173+ < a id ="__codelineno-1-7 " name ="__codelineno-1-7 " href ="#__codelineno-1-7 "> </ a > < span class ="p " > {{ </ span > < span class =" n " > FUNCTION_DEFINITIONS </ span > < span class =" p " > }} </ span >
21742174< a id ="__codelineno-1-8 " name ="__codelineno-1-8 " href ="#__codelineno-1-8 "> </ a >
2175- < a id ="__codelineno-1-9 " name ="__codelineno-1-9 " href ="#__codelineno-1-9 "> </ a > < span class ="c "> #region Classes</ span >
2176- < a id ="__codelineno-1-10 " name ="__codelineno-1-10 " href ="#__codelineno-1-10 "> </ a > < span class ="p "> {{</ span > < span class ="n "> ClassDefinitions</ span > < span class ="p "> }}</ span >
2177- < a id ="__codelineno-1-11 " name ="__codelineno-1-11 " href ="#__codelineno-1-11 "> </ a > < span class ="c "> #endregion Classes</ span >
2178- < a id ="__codelineno-1-12 " name ="__codelineno-1-12 " href ="#__codelineno-1-12 "> </ a >
2179- < a id ="__codelineno-1-13 " name ="__codelineno-1-13 " href ="#__codelineno-1-13 "> </ a > < span class ="c "> #region Functions</ span >
2180- < a id ="__codelineno-1-14 " name ="__codelineno-1-14 " href ="#__codelineno-1-14 "> </ a > < span class ="p "> {{</ span > < span class ="n "> FunctionDefinitions</ span > < span class ="p "> }}</ span >
2181- < a id ="__codelineno-1-15 " name ="__codelineno-1-15 " href ="#__codelineno-1-15 "> </ a > < span class ="c "> #endregion Functions</ span >
2182- < a id ="__codelineno-1-16 " name ="__codelineno-1-16 " href ="#__codelineno-1-16 "> </ a >
2183- < a id ="__codelineno-1-17 " name ="__codelineno-1-17 " href ="#__codelineno-1-17 "> </ a > < span class ="c "> #region Files</ span >
2184- < a id ="__codelineno-1-18 " name ="__codelineno-1-18 " href ="#__codelineno-1-18 "> </ a > < span class ="p "> {{</ span > < span class ="n "> FileContents</ span > < span class ="p "> }}</ span >
2185- < a id ="__codelineno-1-19 " name ="__codelineno-1-19 " href ="#__codelineno-1-19 "> </ a > < span class ="c "> #endregion Files</ span >
2175+ < a id ="__codelineno-1-9 " name ="__codelineno-1-9 " href ="#__codelineno-1-9 "> </ a > < span class ="p "> {{</ span > < span class ="n "> FILE_CONTENTS</ span > < span class ="p "> }}</ span >
21862176</ code > </ pre > </ div >
21872177< p > Each placeholder is replaced with the correctly ordered source code collected by the
21882178corresponding collector. The token names match the default < code > CollectionKey</ code > for each collector
@@ -2226,7 +2216,7 @@ <h3 id="4-ordered-mode-and-hybrid-mode">4. Ordered Mode and Hybrid Mode<a class=
22262216that require them to be interleaved. < strong > Hybrid Mode</ strong > is activated manually — by placing the
22272217ordered components placeholder (default: < code > {{ORDERED_COMPONENTS}}</ code > ) in a template whose code
22282218has no cross-dependencies. Both modes use the same template structure and validation rules:</ p >
2229- < div class ="highlight "> < span class ="filename "> Ordered / Hybrid Mode template</ span > < pre > < span > </ span > < code > < a id ="__codelineno-6-1 " name ="__codelineno-6-1 " href ="#__codelineno-6-1 "> </ a > < span class ="p "> {{</ span > < span class ="n "> UsingStatements </ span > < span class ="p "> }}</ span >
2219+ < div class ="highlight "> < span class ="filename "> Ordered / Hybrid Mode template</ span > < pre > < span > </ span > < code > < a id ="__codelineno-6-1 " name ="__codelineno-6-1 " href ="#__codelineno-6-1 "> </ a > < span class ="p "> {{</ span > < span class ="n "> USING_STATEMENTS </ span > < span class ="p "> }}</ span >
22302220< a id ="__codelineno-6-2 " name ="__codelineno-6-2 " href ="#__codelineno-6-2 "> </ a > < span class ="p "> {{</ span > < span class ="n "> ORDERED_COMPONENTS</ span > < span class ="p "> }}</ span >
22312221</ code > </ pre > </ div >
22322222< p > All Enum, Class, and Function components are emitted in a single topologically ordered block
@@ -2265,9 +2255,9 @@ <h3 id="5-combining-with-release-management-tokens">5. Combining with Release Ma
22652255This allows release metadata — version numbers, build timestamps, Git commit hashes — to be
22662256injected directly into the template using the same < code > {{Token}}</ code > syntax:</ p >
22672257< div class ="highlight "> < span class ="filename "> Template with release tokens</ span > < pre > < span > </ span > < code > < a id ="__codelineno-9-1 " name ="__codelineno-9-1 " href ="#__codelineno-9-1 "> </ a > < span class ="c "> # Version {{VERSION}} — built {{BUILD_DATE}}</ span >
2268- < a id ="__codelineno-9-2 " name ="__codelineno-9-2 " href ="#__codelineno-9-2 "> </ a > < span class ="p "> {{</ span > < span class ="n "> UsingStatements </ span > < span class ="p "> }}</ span >
2269- < a id ="__codelineno-9-3 " name ="__codelineno-9-3 " href ="#__codelineno-9-3 "> </ a > < span class ="p "> {{</ span > < span class ="n "> ClassDefinitions </ span > < span class ="p "> }}</ span >
2270- < a id ="__codelineno-9-4 " name ="__codelineno-9-4 " href ="#__codelineno-9-4 "> </ a > < span class ="p "> {{</ span > < span class ="n "> FunctionDefinitions </ span > < span class ="p "> }}</ span >
2258+ < a id ="__codelineno-9-2 " name ="__codelineno-9-2 " href ="#__codelineno-9-2 "> </ a > < span class ="p "> {{</ span > < span class ="n "> USING_STATEMENTS </ span > < span class ="p "> }}</ span >
2259+ < a id ="__codelineno-9-3 " name ="__codelineno-9-3 " href ="#__codelineno-9-3 "> </ a > < span class ="p "> {{</ span > < span class ="n "> CLASS_DEFINITIONS </ span > < span class ="p "> }}</ span >
2260+ < a id ="__codelineno-9-4 " name ="__codelineno-9-4 " href ="#__codelineno-9-4 "> </ a > < span class ="p "> {{</ span > < span class ="n "> FUNCTION_DEFINITIONS </ span > < span class ="p "> }}</ span >
22712261</ code > </ pre > </ div >
22722262< div class ="highlight "> < span class ="filename "> psscriptbuilder.bumpconfig.json (excerpt)</ span > < pre > < span > </ span > < code > < a id ="__codelineno-10-1 " name ="__codelineno-10-1 " href ="#__codelineno-10-1 "> </ a > < span class ="p "> {</ span >
22732263< a id ="__codelineno-10-2 " name ="__codelineno-10-2 " href ="#__codelineno-10-2 "> </ a > < span class ="w "> </ span > < span class ="nt "> "bumpFiles"</ span > < span class ="p "> :</ span > < span class ="w "> </ span > < span class ="p "> [</ span >
@@ -2377,7 +2367,7 @@ <h3 id="validation-error-reference">Validation Error Reference<a class="headerli
23772367</ tr >
23782368< tr >
23792369< td > Forbidden placeholder in Ordered/Hybrid mode</ td >
2380- < td > < code > {{ClassDefinitions }}</ code > etc. present when the ordered components placeholder is used</ td >
2370+ < td > < code > {{CLASS_DEFINITIONS }}</ code > etc. present when the ordered components placeholder is used</ td >
23812371< td > Remove per-type placeholders; use only the ordered components placeholder</ td >
23822372</ tr >
23832373< tr >
@@ -2387,12 +2377,12 @@ <h3 id="validation-error-reference">Validation Error Reference<a class="headerli
23872377</ tr >
23882378< tr >
23892379< td > Wrong placeholder order (Using)</ td >
2390- < td > A non-< code > Using</ code > placeholder appears before < code > {{UsingStatements }}</ code > </ td >
2380+ < td > A non-< code > Using</ code > placeholder appears before < code > {{USING_STATEMENTS }}</ code > </ td >
23912381< td > Move < code > Using</ code > placeholders before all others</ td >
23922382</ tr >
23932383< tr >
23942384< td > Wrong placeholder order (Enum)</ td >
2395- < td > A < code > Class</ code > or < code > Function</ code > placeholder appears before < code > {{EnumDefinitions }}</ code > </ td >
2385+ < td > A < code > Class</ code > or < code > Function</ code > placeholder appears before < code > {{ENUM_DEFINITIONS }}</ code > </ td >
23962386< td > Move < code > Enum</ code > placeholders before all < code > Class</ code > and < code > Function</ code > placeholders</ td >
23972387</ tr >
23982388< tr >
0 commit comments