1#ifndef YAZE_ZELDA3_DUNGEON_DUNGEON_WALL_PROFILE_H_
2#define YAZE_ZELDA3_DUNGEON_DUNGEON_WALL_PROFILE_H_
11#include "absl/status/statusor.h"
12#include "absl/strings/string_view.h"
53 const std::vector<DungeonWallProfileBinding>&
bindings()
const {
60 friend absl::StatusOr<std::shared_ptr<const DungeonWallProfileCollection>>
62 friend absl::StatusOr<std::shared_ptr<const DungeonWallProfileCollection>>
66 std::vector<DungeonWallProfileBinding>
bindings,
98absl::StatusOr<std::shared_ptr<const DungeonWallProfileCollection>>
100absl::StatusOr<std::shared_ptr<const DungeonWallProfileCollection>>
const std::string & source_path() const
const std::string & source_text() const
const std::vector< DungeonWallProfile > & profiles() const
std::vector< DungeonWallProfileBinding > bindings_
const std::vector< DungeonWallProfileBinding > & bindings() const
friend absl::StatusOr< std::shared_ptr< const DungeonWallProfileCollection > > LoadDungeonWallProfiles(const std::string &path)
friend absl::StatusOr< std::shared_ptr< const DungeonWallProfileCollection > > ParseDungeonWallProfiles(absl::string_view source)
DungeonWallProfileCollection(std::vector< DungeonWallProfile > profiles, std::vector< DungeonWallProfileBinding > bindings, std::string source_text, std::string source_path)
std::vector< DungeonWallProfile > profiles_
const std::optional< std::string > & profile_id() const
friend absl::StatusOr< ResolvedWallProfile > ResolveWallProfile(const DungeonWallProfileCollection &collection, const WallProfileContext &context, const DungeonTilePatterns &legacy)
ResolvedWallProfile(std::optional< std::string > profile_id, DungeonTilePatterns patterns)
std::optional< std::string > profile_id_
const DungeonTilePatterns & patterns() const
DungeonTilePatterns patterns_
Zelda 3 specific classes and functions.
constexpr size_t kWallProfileMaxBindings
absl::StatusOr< std::shared_ptr< const DungeonWallProfileCollection > > ParseDungeonWallProfiles(absl::string_view source)
constexpr size_t kWallProfileMaxPatterns
absl::StatusOr< std::shared_ptr< const DungeonWallProfileCollection > > LoadDungeonWallProfiles(const std::string &path)
constexpr size_t kWallProfileMaxWordsPerProfile
absl::StatusOr< ResolvedWallProfile > ResolveWallProfile(const DungeonWallProfileCollection &collection, const WallProfileContext &context, const DungeonTilePatterns &legacy)
constexpr size_t kWallProfileMaxProfiles
constexpr size_t kWallProfileMaxSourceBytes
std::vector< uint16_t > words
std::optional< uint16_t > entrance
std::optional< uint8_t > world
std::vector< DungeonWallPattern > patterns
std::optional< int > world
std::optional< int > entrance