@@ -1175,6 +1175,42 @@ class ProjMgrWorker {
11751175 */
11761176 bool ElaborateVariablesConfigurations ();
11771177
1178+ /* *
1179+ * @brief Resolve access sequences and normalize a path relative to a reference directory.
1180+ *
1181+ * This expands static and dynamic access sequences in `item`, optionally records
1182+ * context dependencies for cross-context references, and converts the final path
1183+ * to be relative to `outDir` using `ref` as the input base directory when no
1184+ * context-based replacement is performed.
1185+ *
1186+ * @param context current context used for variable expansion and dependency tracking
1187+ * @param item input string to process; replaced in-place with the resolved value
1188+ * @param ref base directory used to resolve relative paths
1189+ * @param genDep add referenced contexts to `context.dependsOn` when true
1190+ * @param outDir output directory used when rebasing the resulting path; defaults to the context cprj directory when empty
1191+ * @param withHeadingDot preserve a leading `./` when generating relative paths
1192+ * @param solutionLevel allow solution-level context matching for access sequences
1193+ * @return true if the sequence was resolved successfully, otherwise false
1194+ */
1195+ bool ProcessSequenceRelative (ContextItem& context, std::string& item, const std::string& ref = std::string(),
1196+ bool genDep = true, std::string outDir = std::string(), bool withHeadingDot = false, bool solutionLevel = false);
1197+
1198+ /* *
1199+ * @brief parse and load context layers
1200+ * @param context item
1201+ * @return true if there is no error
1202+ */
1203+ bool ParseContextLayers (ContextItem& context);
1204+
1205+ /* *
1206+ * @brief process context precedences
1207+ * @param context item
1208+ * @param scope: process board, device or both
1209+ * @param rerun flag to reprocess
1210+ * @return true if there is no error
1211+ */
1212+ bool ProcessPrecedences (ContextItem& context, BoardOrDevice process = BoardOrDevice::None, bool rerun = false );
1213+
11781214 /* *
11791215 * @brief clear worker members for reloading a solution
11801216 * @return true if there is no error
@@ -1259,7 +1295,6 @@ class ProjMgrWorker {
12591295 bool CheckContextFilters (const TypeFilter& typeFilter, const ContextItem& context);
12601296 bool GetTypeContent (ContextItem& context);
12611297 bool GetProjectSetup (ContextItem& context);
1262- bool ProcessPrecedences (ContextItem& context, BoardOrDevice process = BoardOrDevice::None, bool rerun = false );
12631298 bool ProcessPrecedence (StringCollection& item);
12641299 bool ProcessCompilerPrecedence (StringCollection& item, bool acceptRedefinition = false );
12651300 bool ProcessDevicePrecedence (StringCollection& item);
@@ -1279,7 +1314,6 @@ class ProjMgrWorker {
12791314 bool ProcessSequencesRelatives (ContextItem& context, bool rerun);
12801315 bool ProcessSequencesRelatives (ContextItem& context, std::vector<std::string>& src, const std::string& ref = std::string(), std::string outDir = std::string(), bool withHeadingDot = false, bool solutionLevel = false);
12811316 bool ProcessSequencesRelatives (ContextItem& context, BuildType& build, const std::string& ref = std::string());
1282- bool ProcessSequenceRelative (ContextItem& context, std::string& item, const std::string& ref = std::string(), bool genDep = true, std::string outDir = std::string(), bool withHeadingDot = false, bool solutionLevel = false);
12831317 bool ProcessOutputFilenames (ContextItem& context);
12841318 bool ProcessLinkerOptions (ContextItem& context);
12851319 bool ProcessLinkerOptions (ContextItem& context, const LinkerItem& linker, const std::string& ref);
@@ -1336,7 +1370,6 @@ class ProjMgrWorker {
13361370 bool GetGeneratorDir (const RteGenerator* generator, ContextItem& context, const std::string& layer, std::string& genDir);
13371371 bool GetGeneratorOptions (ContextItem& context, const std::string& layer, GeneratorOptionsItem& options);
13381372 bool GetExtGeneratorOptions (ContextItem& context, const std::string& layer, GeneratorOptionsItem& options);
1339- bool ParseContextLayers (ContextItem& context);
13401373 bool AddPackRequirements (ContextItem& context, const std::vector<PackItem>& packRequirements);
13411374 void InsertPackRequirements (const std::vector<PackItem>& src, std::vector<PackItem>& dst, std::string base);
13421375 void CheckTypeFilterSpelling (const TypeFilter& typeFilter);
0 commit comments