protected abstract void PrintMessage(ErrorLogger logger);
public void Print(ErrorLogger logger) { PrintMessage(logger); logger.Log($"{_line}"); PrintErrorPointer(logger); }
protected override void PrintMessage(ErrorLogger logger) { logger.Log($"{FileName}:{_lineNo}:{_columnNo}: error: array ‘{_identifier}’ has invalid size ‘{_declaredSize}’"); }
protected override void PrintMessage(ErrorLogger logger) { logger.Log($"{FileName}:{_lineNo}:{_columnNo}: error: array ‘{_identifier}’ has inconsistent size (declared size: {_declaredSize}, elements count: {_elementsCount})"); }
protected override void PrintErrorPointer(ErrorLogger logger) { logger.Log($"{GetErrorPointerLine(_columnNo + _identifierPrefix.Length)}"); }
protected override void PrintMessage(ErrorLogger logger) { logger.Log($"{FileName}:{_lineNo}:{_columnNo}: error: ‘{_identifier.Split(".").First()}’ undeclared"); }
protected virtual void PrintErrorPointer(ErrorLogger logger) { logger.Log($"{GetErrorPointerLine(_columnNo)}"); }