protected override void GenerateGetMethodCodeCore(CodeContainerBase container, string localValueVarName, ref bool localValueVarUsed, string retLenVarName) { container.AddCodeFormat("snmp_encode_truthvalue({0}, /* TODO: put requested bool value here */ 0);", localValueVarName); localValueVarUsed = true; container.AddCode(String.Format("{0} = {1};", retLenVarName, (!String.IsNullOrWhiteSpace(this.FixedValueLength)) ? this.FixedValueLength : "0")); }
protected override void GenerateSetMethodCodeCore(CodeContainerBase container, string localValueVarName, ref bool localValueVarUsed, string lenVarName, ref bool lenVarUsed, string retErrVarName) { VariableType truthVar = new VariableType("bool_value", LwipDefs.Vt_U8); container.Declarations.Add(new VariableDeclaration(truthVar)); container.AddCodeFormat("snmp_decode_truthvalue({0}, &{1});", localValueVarName, truthVar.Name); localValueVarUsed = true; container.AddElement(new Comment(String.Format("TODO: store new value contained in '{0}' here", truthVar.Name), singleLine: true)); }
protected virtual void GenerateGetMethodCodeCore(CodeContainerBase container, string localValueVarName, ref bool localValueVarUsed, string retLenVarName) { container.AddElement(new Comment(String.Format("TODO: put requested value to '*{0}' here", localValueVarName), singleLine: true)); container.AddCodeFormat("{0} = {1};", retLenVarName, (!String.IsNullOrWhiteSpace(this.FixedValueLength)) ? this.FixedValueLength : "0"); }
public virtual void GenerateTestMethodCode(CodeContainerBase container, string valueVarName, ref bool valueVarUsed, string lenVarName, ref bool lenVarUsed, string retErrVarName) { if (this.Restrictions.Count > 0) { bool localVarUsed; if (GenerateValueDeclaration(container, LocalValueName, valueVarName)) { valueVarUsed = true; localVarUsed = false; } else { localVarUsed = true; // do not generate UNUSED_ARG code } if (!String.IsNullOrWhiteSpace(this.FixedValueLength)) { // check for fixed value container.AddCodeFormat("LWIP_ASSERT(\"Invalid length for datatype\", ({0} == {1}));", lenVarName, this.FixedValueLength); lenVarUsed = true; } GenerateTestMethodCodeCore(container, LocalValueName, ref localVarUsed, lenVarName, ref lenVarUsed, retErrVarName); if (!localVarUsed) { container.AddCode(String.Format("LWIP_UNUSED_ARG({0});", LocalValueName)); } } else { container.AddCodeFormat("{0} == {1};", retErrVarName, LwipDefs.Def_ErrorCode_Ok); } }