GDevelop Core
Core library for developing platforms and tools compatible with GDevelop.
|
Holds references to variables, objects, properties and other containers. More...
#include <ProjectScopedContainers.h>
Public Member Functions | |
ProjectScopedContainers (const gd::ObjectsContainersList &objectsContainersList_, const gd::VariablesContainersList &variablesContainersList_, const gd::VariablesContainer *legacyGlobalVariables_, const gd::VariablesContainer *legacySceneVariables_, const gd::PropertiesContainersList &propertiesContainersList_) | |
ProjectScopedContainers & | AddPropertiesContainer (const gd::PropertiesContainer &container) |
ProjectScopedContainers & | AddParameters (const ParameterMetadataContainer ¶meters) |
template<class ReturnType > | |
ReturnType | MatchIdentifierWithName (const gd::String &name, std::function< ReturnType()> objectCallback, std::function< ReturnType()> variableCallback, std::function< ReturnType()> propertyCallback, std::function< ReturnType()> parameterCallback, std::function< ReturnType()> notFoundCallback) const |
void | ForEachIdentifierMatchingSearch (const gd::String &search, std::function< void(const gd::String &name, const ObjectConfiguration *objectConfiguration)> objectCallback, std::function< void(const gd::String &name, const gd::Variable &variable)> variableCallback, std::function< void(const gd::NamedPropertyDescriptor &property)> propertyCallback, std::function< void(const gd::ParameterMetadata ¶meter)> parameterCallback) const |
const gd::ObjectsContainersList & | GetObjectsContainersList () const |
const gd::VariablesContainersList & | GetVariablesContainersList () const |
gd::VariablesContainersList & | GetVariablesContainersList () |
Allow modification of the variables containers list. This is used by code generation which does push and pop of local variable containers. | |
const gd::VariablesContainer * | GetLegacyGlobalVariables () const |
Return the global variables of the current scene or the current extension. It allows legacy "globalvar" parameters to accept extension variables. | |
const gd::VariablesContainer * | GetLegacySceneVariables () const |
Return the scene variables of the current scene or the current extension. It allows legacy "scenevar" parameters to accept extension variables. | |
const gd::PropertiesContainersList & | GetPropertiesContainersList () const |
const std::vector< const ParameterMetadataContainer * > & | GetParametersVectorsList () const |
ProjectScopedContainers () | |
Static Public Member Functions | |
static ProjectScopedContainers | MakeNewProjectScopedContainersForProjectAndLayout (const gd::Project &project, const gd::Layout &layout) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForProject (const gd::Project &project) |
static ProjectScopedContainers | MakeNewProjectScopedContainersFor (const gd::ObjectsContainer &globalObjectsContainers, const gd::ObjectsContainer &objectsContainers) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForEventsFunctionsExtension (const gd::Project &project, const gd::EventsFunctionsExtension &eventsFunctionsExtension) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForFreeEventsFunction (const gd::Project &project, const gd::EventsFunctionsExtension &eventsFunctionsExtension, const gd::EventsFunction &eventsFunction, gd::ObjectsContainer ¶meterObjectsContainer) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForBehaviorEventsFunction (const gd::Project &project, const gd::EventsFunctionsExtension &eventsFunctionsExtension, const gd::EventsBasedBehavior &eventsBasedBehavior, const gd::EventsFunction &eventsFunction, gd::ObjectsContainer ¶meterObjectsContainer) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForObjectEventsFunction (const gd::Project &project, const gd::EventsFunctionsExtension &eventsFunctionsExtension, const gd::EventsBasedObject &eventsBasedObject, const gd::EventsFunction &eventsFunction, gd::ObjectsContainer ¶meterObjectsContainer) |
static ProjectScopedContainers | MakeNewProjectScopedContainersForEventsBasedObject (const gd::Project &project, const gd::EventsFunctionsExtension &eventsFunctionsExtension, const gd::EventsBasedObject &eventsBasedObject, gd::ObjectsContainer &outputObjectsContainer) |
static ProjectScopedContainers | MakeNewProjectScopedContainersWithLocalVariables (const ProjectScopedContainers &projectScopedContainers, const gd::BaseEvent &event) |
Holds references to variables, objects, properties and other containers.
This is useful to access elements of a project from a specific location, honoring the scope of each element.
For example, in an expression, when an identifier is written, this class is used to know what this identifier refers too.
|
inline |
Do not use - should be private but accessible to let Emscripten create a temporary.
|
static |