/* ------------------------------------------- Copyright SoftwareLabs ------------------------------------------- */ #ifndef _INC_PLIST_HPP__ #define _INC_PLIST_HPP__ #include #include #include #include namespace NewOS { using PropertyId = Int; /// @brief Kernel property class. class Property { public: explicit Property(const StringView& sw) : fName(sw) { } virtual ~Property() = default; public: Property& operator=(const Property&) = default; Property(const Property&) = default; bool StringEquals(StringView& name); const PropertyId& GetPropertyById(); private: Ref fName; PropertyId fAction; }; template using PropertyArray = Array; } // namespace NewOS #endif // !_INC_PLIST_HPP__