private void CheckXsdNamespace(SoalType type, IMetaSymbol symbol) { if (!type.HasXsdNamespace()) { this.AddDiagnostic(symbol, SoalGeneratorErrorCode.TypeHasNoXsdNamespace); } }
private void AddDiagnostic(IMetaSymbol modelObject, ErrorCode errorCode, params object[] args) { if (_symbolMap.TryGetValue(modelObject, out Symbol symbol)) { ImmutableArray <SyntaxReference> references = symbol.DeclaringSyntaxReferences; foreach (var reference in references) { this.diagnostics.Add(errorCode, reference.GetSyntax().GetLocation(), args); } } else { this.diagnostics.Add(errorCode, Location.None, args); } }