public static PartialSignal Parse(AssignmentSide parent, string text) { var signalStr = Regex.Match(text, PC.VHDLName + PC.MFS + PC.Enumeration).Value; if (String.IsNullOrEmpty(signalStr)) { return(null); } var name = Regex.Match(signalStr, PC.VHDLName).Value; var enumerationStr = Regex.Match(signalStr, PC.Enumeration).Value; if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(enumerationStr)) { return(null); } var signalDefenition = parent.Document.Signals.GetSignalDefenition(name); var enumeration = EnumerationParser.Parse(enumerationStr); if (enumeration == null || signalDefenition == null) { return(null); } return(new PartialSignal(parent, signalDefenition, enumeration)); }
public static AssignmentSignal Parse(AssignmentSide parent, string text) { AssignmentSignal signal = null;//PartialSignal.Parse(parent, text); if (signal == null) { signal = AssignmentSignal.Parse(parent, text); } return(signal); }
public static ConstValue Parse(AssignmentSide parent, string text) { var resultStr = Regex.Match(text, PC.DefaultValueA).Value; if (!string.IsNullOrEmpty(resultStr)) { return(new ConstValue(parent, text)); } return(null); }
public static Assignment Create(Map map, Port left, SignalDefenition right, EnumerationBase enumeration = null) { var result = new Assignment() { Map = map, Text = left + " => " + right + "," }; result._left = AssignmentSide.Create(result, left); result._rigt = AssignmentSide.Create(result, right, enumeration); if (!result.Validation()) { throw new Exception("Inncorect bits"); } return(result); }
public static Assignment Create(Map map, string text, string left, string right) { var result = new Assignment() { Map = map, Text = text }; var leftAs = AssignmentSide.Parse(result, left); var rightAs = AssignmentSide.Parse(result, right); if (rightAs.Signal != null) { rightAs.Signal.IsSource = !leftAs.Signal.IsSource; } result._left = leftAs; result._rigt = rightAs; if (!result.Validation()) { throw new Exception("Inncorect bits"); } return(result); }
public PartialSignal(AssignmentSide parent, SignalDefenition defenition, EnumerationBase enumeration) : base(defenition, parent) { Name = defenition.Name; Enumeration = enumeration; }
private ConstValue(AssignmentSide assignmentSide, string text) { AssignmentSide = assignmentSide; Text = text; }