static Element FromStream(Stream source) { var identifier = new ClassIdentifier(source); var elementType = ElementDefinitions[identifier]; Element element = elementType != null ? (Element)Activator.CreateInstance(elementType) : new UnknownElement(identifier); element.Initialize(source); return element; }
private static string GenericTypeWriter( TypeStatement typeStatement, IList <string> usedClassNames, bool includeName ) { var argumentsTemplate = "System.Nullable<[[TYPE]]>[[NAME]][[DEFAULT_VALUE]]"; if (typeStatement.IsTypeAlias) { return(GenericTypeWriter( typeStatement.AliasType, usedClassNames, includeName )); } else if (typeStatement.IsNullable) { var genericType = typeStatement.GenericTypes.First(); if (!genericType.IsEnum && (ClassIdentifier.Identify( usedClassNames, genericType.Name ) || genericType.IsNullable || genericType.IsArray || genericType.IsModifier || genericType.IsAction || genericType.IsTypeAlias || genericType.Name == GenerationIdentifiedTypes.String || genericType.Name == GenerationIdentifiedTypes.CachedEntity ) ) { argumentsTemplate = "[[TYPE]][[NAME]][[DEFAULT_VALUE]]"; } } else if (!typeStatement.IsEnum && (ClassIdentifier.Identify( usedClassNames, typeStatement.Name ) || typeStatement.IsNullable || typeStatement.IsArray || typeStatement.IsModifier || typeStatement.IsAction || typeStatement.Name == GenerationIdentifiedTypes.String || typeStatement.Name == GenerationIdentifiedTypes.CachedEntity ) ) { argumentsTemplate = "[[TYPE]][[NAME]][[DEFAULT_VALUE]]"; } return(argumentsTemplate.Replace( "[[NAME]]", includeName ? " [[NAME]]" : string.Empty )); }
public void WhenClassIdUnknownClassIdAssigned() { // arrange var classIdentifier = new ClassIdentifier(); var classId = classIdentifier.Record("A", "B"); // act var retVal = classIdentifier.Record("B", "B"); // assert Assert.AreEqual(classId + 1, retVal); }
public TraceDataCollector(IMessageProtocol messageProtocol, BufferService bufferService, ClassIdentifier classIdentifier, MethodIdentifier methodIdentifier, IErrorHandler errorHandler, ILog logger) { _messageProtocol = messageProtocol ?? throw new ArgumentNullException(nameof(messageProtocol)); _bufferService = bufferService ?? throw new ArgumentNullException(nameof(bufferService)); _classIdentifier = classIdentifier ?? throw new ArgumentNullException(nameof(classIdentifier)); _methodIdentifier = methodIdentifier ?? throw new ArgumentNullException(nameof(methodIdentifier)); _errorHandler = errorHandler ?? throw new ArgumentNullException(nameof(errorHandler)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _methodIdAdapter = new MethodIdAdapter(this); _task = Task.Run(() => ReadTraceMessages()); }
public ElementAttribute(ClassIdentifier identifier, ElementTypes type, string description = null) : this(type, description) { ClassIdentifier = identifier; }
public ElementAttribute(byte a, byte b, byte c, byte d, ElementTypes type, string description = null) : this(type, description) { ClassIdentifier = new ClassIdentifier(a, b, c, d); }
public ElementAttribute(int identifier, ElementTypes type, string description = null) : this(type, description) { ClassIdentifier = new ClassIdentifier(identifier); }
public UnknownElement(ClassIdentifier identifier) { Identifier = identifier; }
protected Element(Stream source) { var identifier = new ClassIdentifier(source); Initialize(source); }
RuleHead IParsnipRuleFactory.RuleHead1(RuleHeadPrefix t0, ClassIdentifier t1) => new RuleHead(t0.Id, t1);