public override int GetHashCode()
 {
     unchecked     // Overflow is fine, just wrap
     {
         int hash = 17;
         // Suitable nullity checks etc, of course :)
         hash = hash * 23 + VariableA.GetHashCode();
         hash = hash * 23 + VariableB.GetHashCode();
         hash = hash * 23 + Sancts.GetHashCode();
         return(hash);
     }
 }
                public override ILExpression BuildNew(PatternMatcher pm)
                {
                    var res = pm.Operator;

                    res.Arguments.Clear();
                    if (pm.SimpleLeftOperand)
                    {
                        res.Arguments.Add(pm.SimpleOperand);
                    }
                    res.Arguments.Add(VariableA.BuildNew(pm));
                    if (pm.B != null)
                    {
                        res.Arguments.Add(VariableB.BuildNew(pm));
                    }
                    else if (pm.SimpleOperand != null && !pm.SimpleLeftOperand)
                    {
                        res.Arguments.Add(pm.SimpleOperand);
                    }
                    return(res);
                }
Example #3
0
        public override string[] ExportData()
        {
            DataTable dtNew = DataTable.CopyForExport();

            //Get the response, treatment and covariate columns by removing all other columns from the new datatable
            foreach (string columnName in dtNew.GetVariableNames())
            {
                if (!VariableA.Contains(columnName) && (VariableB == null || !VariableB.Contains(columnName)) && (VariableC == null || !VariableC.Contains(columnName) && (VariableD == null || !VariableD.Contains(columnName))))
                {
                    dtNew.Columns.Remove(columnName);
                }
            }

            string[] csvArray = dtNew.GetCSVArray();

            //fix any columns with illegal chars here (at the end)
            ArgumentFormatter argFormatter = new ArgumentFormatter();

            csvArray[0] = argFormatter.ConvertIllegalCharacters(csvArray[0]);

            return(csvArray);
        }