process method
Implementation
TagserResult? process(ProcessMessage msg, TagserContext context) {
final charCode = msg.charCode;
if (charCode == charEos) {
return TagserResult(
err: TagserError(
code: errorUnexpectedEos, text: getError(errorUnexpectedEos, null)),
);
} else if (TagserUtils.isAvailableCharacter(charCode)) {
return TagserResult(
state: AttrState(),
message: InitMessage(charCode: charCode),
);
} else if (charCode == charSlash) {
return TagserResult(
state: GetCloseBracket(),
);
} else if (charCode == charCloseBracket) {
return TagserResult(
state: RootState(_tag),
);
} else if (charCode == charSpace) {
return null;
} else {
return TagserResult(
err: TagserError(
code: errorTagMalformed, text: getError(errorTagMalformed, null)),
);
}
}