I feel a bit lost in understanding what the different types of files created by ObjectReef are.
We have files with a .reef
extension for source code.
There is a .refs
file, which appears to be a project configuration file.
I have encountered .refi
, .refr
and .refd
yet.
I ask because I am wondering which of these files are relevant to the application. Where is the application code stored, where is the data, etc.?
.reef
is for source code. All files with this extension are scanned and compiled through build process.reex
is for excluding source files from the compilation. Changing the last letter from f
to x
will cause exclusion from the build, but still it will have syntax highlighting on IDE.refs
It's project (solution) configuration file (XML), like package.json for node.js apps..refi
This is an internal xml file used by engine to navigate to solution root folder..refr
. We call it repository. This file contains whole compiled binary machine code. In other words, it's compiler output file. This file contain all your classes and operations compiled and optimized by ObjectReef. This file may be different for different operating systems and processor architecture due to different calling conventions. For example .refr built on MacOS with Apple Silicon processor will be slightly different than .refr file built on Windows on Intel's x86-64 architecture..refd
it's the application instance data. In multitenant case each tenant has different .refd. Each .refd file has a dependency to the application code (.refr file). So in this file all data (objects aka instances of your classes) of an app are stored. But it's not true when database is used. In database mode all data are stored in MySQL. The .refd is rather cache file with most used object saved. In such case the content of .refd file can be replaced according to the data usage.It's a very brief description. Feel free to ask for more details you need.