@@ -44,7 +44,7 @@ namespace FPL::Parser {
4444
4545 std::vector<Tokenizer::Token> FileCode_Tokens = FPL::Tokenizer::TokenBuilder::ParseToken (FPL::Instruction::FunctionUtils::ReturnStringVector (Paquet.PaquetContent ));
4646
47- auto data_paquet = executeContentCode (FileCode_Tokens, fonction, Paquet);
47+ auto data_paquet = executeContentCode (FileCode_Tokens, fonction, Paquet, data );
4848
4949 for (auto const & variables : data_paquet.Map_Variables ) {
5050 auto it = std::find (data_paquet.Map_Variables .begin (), data_paquet.Map_Variables .end (), variables);
@@ -91,7 +91,7 @@ namespace FPL::Parser {
9191
9292 std::string Import_ContentCode ((std::istreambuf_iterator<char >(file)), (std::istreambuf_iterator<char >()));
9393 std::vector<Tokenizer::Token> ImportFile_Tokens = FPL::Tokenizer::TokenBuilder::ParseToken (Import_ContentCode);
94- auto data_ImportFile = executeContentCode (ImportFile_Tokens, fonction, std::nullopt );
94+ auto data_ImportFile = executeContentCode (ImportFile_Tokens, fonction, std::nullopt , data );
9595
9696 for (auto const & variables : data_ImportFile.Map_Variables ) {
9797 auto it = std::find (data_ImportFile.Map_Variables .begin (), data_ImportFile.Map_Variables .end (), variables);
@@ -227,7 +227,7 @@ namespace FPL::Parser {
227227 forgotEndInstructionOperator (data);
228228 }
229229
230- auto data_f = executeContentCode (FileCode_Tokens, fonction, std::nullopt );
230+ auto data_f = executeContentCode (FileCode_Tokens, fonction, std::nullopt , data );
231231
232232 for (auto const & variables : data_f.Map_Variables ) {
233233 auto it = std::find (data_f.Map_Variables .begin (), data_f.Map_Variables .end (), variables);
@@ -674,7 +674,7 @@ namespace FPL::Parser {
674674 forgotEndInstructionOperator (data);
675675 }
676676
677- auto data_f = executeContentCode (FileCode_Tokens, possibleFunction, std::nullopt );
677+ auto data_f = executeContentCode (FileCode_Tokens, possibleFunction, std::nullopt , data );
678678
679679 if (!data_f.HasReturnValue ) {
680680 RETURN_noreturn (data);
@@ -836,9 +836,20 @@ namespace FPL::Parser {
836836 return false ;
837837 }
838838
839- Data::Data Parser::executeContentCode (std::vector<FPL::Tokenizer::Token>& Tokens, const std::optional<FPL::FonctionDef>& fonction, const std::optional<FPL::Paquet::Paquet>& paquet) {
839+ Data::Data Parser::executeContentCode (std::vector<FPL::Tokenizer::Token>& Tokens, const std::optional<FPL::FonctionDef>& fonction, const std::optional<FPL::Paquet::Paquet>& paquet, FPL::Data::Data& universalData ) {
840840 Data::Data data (Tokens);
841841
842+ for (auto const & v : universalData.Map_Variables ) {
843+ auto it = std::find (universalData.Map_Variables .begin (), universalData.Map_Variables .end (), v);
844+ if (it != universalData.Map_Variables .end ()) {
845+ data.addVariableToMap (it->second .VariableName ,
846+ it->second .VariableValue ,
847+ it->second .VariableType ,
848+ it->second .NeedDelete ,
849+ it->second .IsGlobal );
850+ }
851+ }
852+
842853 while (data.current_token != data.end_token ) {
843854 if (ManagerInstruction (data, fonction, paquet)) {
844855
0 commit comments