public void ResolveStructFields() { foreach (var binding in this.structWorkData) { session.PushContext( "in struct '" + binding.name.GetString() + "'", binding.declNode.GetSpan()); var struc = session.GetStruct(binding.declIndex); foreach (var fieldNode in binding.declNode.fields) { var fieldName = NameResolver.Resolve(fieldNode.name); var fieldType = TypeResolver.Resolve(session, fieldNode.type, binding.useDirectives, true); int duplicateFieldIndex; if (struc.fieldNames.FindByName(fieldName, out duplicateFieldIndex)) { session.AddMessage( Diagnostics.MessageKind.Error, Diagnostics.MessageCode.DuplicateDeclaration, "duplicate field '" + fieldName.GetString() + "'", fieldNode.name.GetSpan(), struc.GetFieldNameSpan(duplicateFieldIndex)); } else { struc.AddField(fieldName, fieldType, fieldNode); } } session.PopContext(); } }
public void TestEmptyName() { var config = ConfigParams.FromTuples(); var name = NameResolver.Resolve(config); Assert.Null(name); }
public void ResolveFunctHeaders() { foreach (var binding in this.functWorkData) { session.PushContext( "in funct '" + binding.name.GetString() + "'", binding.declNode.GetSpan()); var funct = session.GetFunct(binding.declIndex); funct.CreateRegister( TypeResolver.Resolve(session, binding.declNode.returnType, binding.useDirectives, true), true); foreach (var paramNode in binding.declNode.parameters) { var paramName = NameResolver.Resolve(paramNode.name); var paramType = TypeResolver.Resolve(session, paramNode.type, binding.useDirectives, true); var paramReg = funct.CreateRegister(paramType, false); funct.CreateBinding(paramName, paramReg, paramNode.name.GetSpan()); } funct.SetParameterNumber(binding.declNode.parameters.Count); session.PopContext(); } }
/// <summary> /// Configures component by passing configuration parameters. /// </summary> /// <param name="config">configuration parameters to be set.</param> public virtual void Configure(ConfigParams config) { _logger.Configure(config); _connectionResolver.Configure(config, true); _credentialResolver.Configure(config, true); Name = NameResolver.Resolve(config, Name); Name = config.GetAsStringWithDefault("queue", Name); }
public void TestNormalNameResolution() { var config = ConfigParams.FromTuples("Id", "ABC"); var name = NameResolver.Resolve(config); Assert.Equal("ABC", name); config = ConfigParams.FromTuples("NAME", "ABC"); name = NameResolver.Resolve(config); Assert.Equal("ABC", name); }
public Var(string name) { NameResolver.Resolve(ref name); _name = name; }
/// <summary> /// Configures component by passing configuration parameters. /// </summary> /// <param name="config">configuration parameters to be set.</param> public virtual void Configure(ConfigParams config) { Name = NameResolver.Resolve(config, Name); _connectionResolver.Configure(config, true); _credentialResolver.Configure(config, true); }
protected virtual void UpdateMorph() { var text = Morph == null ? "(none)" : NameResolver.Resolve(Morph.Name); Label.Text = new TranslatableText(text); }