diff --git a/msbuild.binlog b/msbuild.binlog
new file mode 100644
index 0000000..912cac3
Binary files /dev/null and b/msbuild.binlog differ
diff --git a/projs/shadow-file-format-test/test.cpp b/projs/shadow-file-format-test/test.cpp
index e238589..c0bb16c 100644
--- a/projs/shadow-file-format-test/test.cpp
+++ b/projs/shadow-file-format-test/test.cpp
@@ -1,5 +1,7 @@
#include "pch.h"
+import Shadow.FileFormat;
+
TEST(TestCaseName, TestName) {
EXPECT_EQ(1, 1);
EXPECT_TRUE(true);
diff --git a/projs/shadow-file-format/shadow-file-format.cpp b/projs/shadow-file-format/shadow-file-format.cpp
deleted file mode 100644
index 662f75c..0000000
--- a/projs/shadow-file-format/shadow-file-format.cpp
+++ /dev/null
@@ -1,3 +0,0 @@
-
-// TODO: write your library functions here
-
diff --git a/projs/shadow-file-format/shadow-file-format.vcxproj b/projs/shadow-file-format/shadow-file-format.vcxproj
index 69655da..c6578f5 100644
--- a/projs/shadow-file-format/shadow-file-format.vcxproj
+++ b/projs/shadow-file-format/shadow-file-format.vcxproj
@@ -18,10 +18,22 @@
+
+
+ CompileAsCppModule
+
+
-
-
+
+
+
+
+
+
+
+
+
{7b9e6056-e4fb-411b-9612-a2fd679c2b69}
diff --git a/projs/shadow-file-format/shadow-file-format.vcxproj.filters b/projs/shadow-file-format/shadow-file-format.vcxproj.filters
index f322c4d..f5fb9e6 100644
--- a/projs/shadow-file-format/shadow-file-format.vcxproj.filters
+++ b/projs/shadow-file-format/shadow-file-format.vcxproj.filters
@@ -15,7 +15,7 @@
-
+
Source Files
@@ -24,9 +24,20 @@
Source Files
+
+ Source Files
+
+
+ Source Files
+
+
+
-
+
+ Header Files
+
+
Header Files
@@ -41,5 +52,14 @@
Header Files
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
\ No newline at end of file
diff --git a/projs/shadow-file-format/src/SFFElement.cpp b/projs/shadow-file-format/src/SFFElement.cpp
index 82d4975..f8d01ec 100644
--- a/projs/shadow-file-format/src/SFFElement.cpp
+++ b/projs/shadow-file-format/src/SFFElement.cpp
@@ -1,26 +1,37 @@
-//#include "pch.h"
-#include "SFFElement.h"
+module;
-SFFElement* SFFElement::GetFirstChild()
-{
- return children.size() > 0 ? children[0]: nullptr;
-}
+import ;
-SFFElement* SFFElement::GetChildByIndex(int i)
-{
- ChildrenMap::iterator it = children.begin();
- for (size_t i = 0; i < i; i++)
+import shadow_utils;
+
+module Shadow.FileFormat:SFFElement;
+
+
+namespace Shadow::SFF {
+
+
+ SFFElement* SFFElement::GetFirstChild()
{
- it++;
+ return children.size() > 0 ? children.begin()->second : nullptr;
}
- return it->second;
-}
-SFFElement* SFFElement::GetChildByName(std::string name)
-{
- ChildrenMap::iterator it = children.find(name);
- if (it != children.end()) {
+ SFFElement* SFFElement::GetChildByIndex(int index)
+ {
+ ChildrenMap::iterator it = children.begin();
+ for (size_t i = 0; i < index; i++)
+ {
+ it++;
+ }
return it->second;
}
- return nullptr;
-}
+
+ SFFElement* SFFElement::GetChildByName(std::string name)
+ {
+ ChildrenMap::iterator it = children.find(name);
+ if (it != children.end()) {
+ return it->second;
+ }
+ return nullptr;
+ }
+
+}
\ No newline at end of file
diff --git a/projs/shadow-file-format/src/SFFElement.h b/projs/shadow-file-format/src/SFFElement.h
deleted file mode 100644
index 1002099..0000000
--- a/projs/shadow-file-format/src/SFFElement.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#pragma once
-
-#include