public override bool Equals(RosMessage ____other)
            {
                if (____other == null)
                {
                    return(false);
                }

                bool ret = true;

                rosgardener.SetMessageCommand.Request other = (Messages.rosgardener.SetMessageCommand.Request)____other;

                ret &= command.Equals(other.command);
                return(ret);
            }
            public override bool Equals(RosMessage ____other)
            {
                if (____other == null)
                {
                    return(false);
                }

                bool ret = true;

                rosgardener.SetMessageCommand.Response other = (Messages.rosgardener.SetMessageCommand.Response)____other;

                ret &= response.Equals(other.response);
                ret &= success == other.success;
                // for each SingleType st:
                //    ret &= {st.Name} == other.{st.Name};
                return(ret);
            }
        public override bool Equals(RosMessage message)
        {
            if (message == null)
            {
                return(false);
            }
            bool ret = true;
            RobochatQueryResult other;

            try
            {
                other = (RobochatQueryResult)message;
            }
            catch
            {
                return(false);
            }


            ret &= diff.Equals(other.diff);

            return(ret);
        }
        public override bool Equals(RosMessage message)
        {
            if (message == null)
            {
                return(false);
            }
            bool ret = true;
            RobochatQueryGoal other;

            try
            {
                other = (RobochatQueryGoal)message;
            }
            catch
            {
                return(false);
            }


            ret &= command.Equals(other.command);

            return(ret);
        }