I think I might have found a bug with how namespaces are handled. The maintainer of the relevant project (Openplanet) suggested I report it here.
My understanding is that this should work:
class DictOfChallenge_WriteLog : _DictOfChallenge_WriteLog::DictOfChallenge_WriteLog {}
namespace _DictOfChallenge_WriteLog {
class DictOfChallenge_WriteLog {}
}
namespace DictOfChallenge_WriteLog {
class KvPair : _KvPair::KvPair {}
namespace _KvPair {
class KvPair {}
}
}
I get a compilation error though: ERR: Namespace '_KvPair' doesn't exist
(Note: it doesn't matter if class KvPair : _KvPair::KvPair {}
is declared before or after the _KvPair
namespace)
If anyone is curious about the class/NS names and why anything would be structured like this, I'm writing a code generator (code: https://github.com/XertroV/op-as-codegen/ ) to provide an experience that's closer to higher level languages but which can't be done in angelscript. (there's some up-to-date sample generated code in the ./codegen folder)