public ValidationEntry(ValidationEntrySource source, ValidationEntryLevel level, string message, SpiceLineInfo lineInfo = null) { Source = source; Level = level; Message = message; LineInfo = lineInfo; }
private static string CreateExceptionMessage(string message, SpiceLineInfo lineInfo) { return(lineInfo != null ? (lineInfo.FileName != null ? $"{message} (at line {lineInfo?.LineNumber}, start column = {lineInfo?.StartColumnIndex}, end column = {lineInfo?.EndColumnIndex} from file {lineInfo.FileName})" : $"{message} (at line {lineInfo?.LineNumber}, start column = {lineInfo?.StartColumnIndex}, end column = {lineInfo?.EndColumnIndex})") : $"{message}"); }
/// <summary> /// Returns new instance of <see cref="Control"/> /// from the values of children nodes of <see cref="Symbols.Control"/> parse tree node. /// </summary> /// <returns> /// A new instance of <see cref="Control"/>. /// </returns> private SpiceObject CreateControl(ParseTreeNodeEvaluationValues values) { Control control; SpiceLineInfo lineInfo = new SpiceLineInfo(values); switch (values.GetLexem(0).ToLower()) { case ".endl": control = new Control("endl", new ParameterCollection(), lineInfo); break; case ".if": control = new Control( "if", new ParameterCollection( new List <Parameter>() { new ExpressionParameter(values.GetLexem(1), lineInfo), }), lineInfo); break; case ".elseif": control = new Control( "elseif", new ParameterCollection( new List <Parameter>() { new ExpressionParameter(values.GetLexem(1), lineInfo), }), lineInfo); break; case ".else": control = new Control("else", new ParameterCollection(new List <Parameter>()), lineInfo); break; case ".endif": control = new Control("endif", new ParameterCollection(new List <Parameter>()), lineInfo); break; default: control = new Control(values.GetLexem(1), values.GetSpiceObject <ParameterCollection>(2), lineInfo); break; } return(control); }
public PointValues(SpiceLineInfo lineInfo) : base(lineInfo) { Items = new List <SingleParameter>(); }
public PointValues(List <SingleParameter> items, SpiceLineInfo lineInfo) : base(lineInfo) { Items = items; }
public CommentLine(string text, SpiceLineInfo lineInfo) : base(lineInfo) { Text = text; }
public AssignmentParameter(string name, List <string> arguments, List <string> values, bool hasFunctionSyntax, SpiceLineInfo lineInfo) : base(lineInfo) { Name = name; Arguments = arguments; Values = values; HasFunctionSyntax = hasFunctionSyntax; }
public SubCircuit(string name, Statements statements, List <string> pins, SpiceLineInfo lineInfo) : base(lineInfo) { Name = name; Statements = statements; Pins = pins; }
public StringParameter(string rawString, SpiceLineInfo lineInfo) : base(rawString, lineInfo) { }
public LexerException(string message, Exception inner, SpiceLineInfo lineInfo) : base(message, inner, lineInfo) { }
public WordParameter(string word, SpiceLineInfo lineInfo) : base(word, lineInfo) { }
public PointParameter(PointValues values, SpiceLineInfo lineInfo) : base(lineInfo) { Values = values; }
protected SpiceObject(SpiceLineInfo lineInfo) { LineInfo = lineInfo; }
public ValueParameter(string value, SpiceLineInfo lineInfo) : base(value, lineInfo) { }
public ExpressionParameter(string expression, SpiceLineInfo lineInfo) : base(expression, lineInfo) { }
public Points(List <PointParameter> values, SpiceLineInfo lineInfo) : base(lineInfo) { Values = values; }
public ExpressionEqualParameter(string expression, Points points, SpiceLineInfo lineInfo) : base(lineInfo) { Expression = expression; Points = points; }
public Component(string name, ParameterCollection pinsAndParameters, SpiceLineInfo lineInfo) : base(lineInfo) { Name = name; PinsAndParameters = pinsAndParameters; }
private IComponentGenerator GetComponentGenerator(ICircuitContext context, string componentName, SpiceLineInfo lineInfo, out string componentType) { foreach (var map in Mapper) { if (componentName.StartsWith(map.Key, context.CaseSensitivity.IsEntityNameCaseSensitive ? StringComparison.CurrentCulture : StringComparison.CurrentCultureIgnoreCase)) { componentType = map.Key; return(map.Value); } } context.Result.Validation.Add(new ValidationEntry(ValidationEntrySource.Reader, ValidationEntryLevel.Warning, $"Unsupported component {componentName}", lineInfo)); componentType = null; return(null); }
protected Parameter(SpiceLineInfo lineInfo) : base(lineInfo) { }
public SubCircuit(string name, Statements statements, ParameterCollection pins, SpiceLineInfo lineInfo) : base(lineInfo) { Name = name; Statements = statements; Pins = pins; }
public SpiceSharpParserException(string message, Exception innerException, SpiceLineInfo lineInfo) : base(CreateExceptionMessage(message, lineInfo), innerException) { LineInfo = lineInfo; }
public Model(string name, ParameterCollection parameters, SpiceLineInfo lineInfo) : base(lineInfo) { Name = name; Parameters = parameters; }
public ReferenceParameter(string reference, SpiceLineInfo lineInfo) : base(reference, lineInfo) { Name = reference.Substring(1, reference.IndexOf('[') - 1); Argument = reference.Substring(reference.IndexOf('[') + 1).TrimEnd(']'); }
protected Statement(SpiceLineInfo lineInfo) : base(lineInfo) { }
protected SingleParameter(string rawString, SpiceLineInfo lineInfo) : base(lineInfo) { _rawString = rawString; }
public IdentifierParameter(string identifier, SpiceLineInfo lineInfo) : base(identifier, lineInfo) { }
public PercentParameter(string value, SpiceLineInfo lineInfo) : base(value, lineInfo) { }