implement name sequence parsing

This commit is contained in:
Jan 2021-02-19 19:42:10 +01:00
parent 3ffcac04dd
commit 873c23fb56

View File

@ -18,4 +18,15 @@ SequenceName::SequenceName()
void SequenceName::ProcessMatch(CommandsParserState* state, SequenceResult<CommandsParserValue>& result) const void SequenceName::ProcessMatch(CommandsParserState* state, SequenceResult<CommandsParserValue>& result) const
{ {
const auto& typeNameToken = result.NextCapture(CAPTURE_TYPE);
StructureInformation* type;
std::vector<MemberInformation*> members;
if (!state->GetTypenameAndMembersFromTypename(typeNameToken.TypeNameValue(), type, members))
throw ParsingException(typeNameToken.GetPos(), "Unknown type");
if (members.empty())
throw ParsingException(typeNameToken.GetPos(), "Need to specify a member when trying to set to a structure name.");
type->m_name_chain = std::move(members);
} }