public CodeParameterDeclarationExpressionCollection(CodeParameterDeclarationExpressionCollection value) { AddRange(value); }
public void AddRange(CodeParameterDeclarationExpressionCollection value) { if (value == null) { throw new ArgumentNullException("value"); } int count = value.Count; for (int i = 0; i < count; i++) { Add(value[i]); } }
public void RequestParameters(InstructionArg arg, bool hasSizeArg, CodeParameterDeclarationExpressionCollection prs) { if (hasSizeArg) { switch (ID) { case None_ID: return; case Imm8_ID: case Imm16_ID: case Imm32_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.UInt, arg.Name + ImmArgSuffix) { DefaultValueExpression = (arg.DefaultValue.HasValue ? new CodePrimitiveExpression(arg.DefaultValue.Value) : null) } ); return; default: break; } } switch (ID) { case None_ID: break; case Dis8_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.SByte, arg.Name + DisArgSuffix)); break; case Dis16_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.Short, arg.Name + DisArgSuffix)); break; case Dis32_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.Int, arg.Name + DisArgSuffix)); break; case Imm8_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.Byte, arg.Name + ImmArgSuffix) { DefaultValueExpression = (arg.DefaultValue.HasValue ? new CodePrimitiveExpression(arg.DefaultValue.Value) : null) } ); return; case Imm16_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.UShort, arg.Name + ImmArgSuffix) { DefaultValueExpression = (arg.DefaultValue.HasValue ? new CodePrimitiveExpression(arg.DefaultValue.Value) : null) } ); return; case Imm32_ID: prs.Add(new CodeParameterDeclarationExpression(StaticTypeReferences.UInt, arg.Name + ImmArgSuffix) { DefaultValueExpression = (arg.DefaultValue.HasValue ? new CodePrimitiveExpression(arg.DefaultValue.Value) : null) } ); return; default: foreach (CustomInstructionArgParameter p in mParameters.Values) { prs.Add(new CodeParameterDeclarationExpression(FieldTypeRegistry.Fields[p.ArgType].CodeType, arg.Name + p.ArgNameSuffix)); } return; } }