//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QDomNodeList")]
    public class QDomNodeList : Object, IDisposable {
        protected SmokeInvocation interceptor = null;
        private IntPtr smokeObject;
        protected QDomNodeList(Type dummy) {}
        protected void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QDomNodeList), this);
        }
        private static SmokeInvocation staticInterceptor = null;
        static QDomNodeList() {
            staticInterceptor = new SmokeInvocation(typeof(QDomNodeList), null);
        }
        public QDomNodeList() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QDomNodeList", "QDomNodeList()", typeof(void));
        }
        public QDomNodeList(QDomNodeList arg1) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QDomNodeList#", "QDomNodeList(const QDomNodeList&)", typeof(void), typeof(QDomNodeList), arg1);
        }
        public override bool Equals(object o) {
            if (!(o is QDomNodeList)) { return false; }
            return this == (QDomNodeList) o;
        }
        public override int GetHashCode() {
            return interceptor.GetHashCode();
        }
        public QDomNode Item(int index) {
            return (QDomNode) interceptor.Invoke("item$", "item(int) const", typeof(QDomNode), typeof(int), index);
        }
        public QDomNode At(int index) {
            return (QDomNode) interceptor.Invoke("at$", "at(int) const", typeof(QDomNode), typeof(int), index);
        }
        public uint Length() {
            return (uint) interceptor.Invoke("length", "length() const", typeof(uint));
        }
        public int Count() {
            return (int) interceptor.Invoke("count", "count() const", typeof(int));
        }
        public int Size() {
            return (int) interceptor.Invoke("size", "size() const", typeof(int));
        }
        public bool IsEmpty() {
            return (bool) interceptor.Invoke("isEmpty", "isEmpty() const", typeof(bool));
        }
        ~QDomNodeList() {
            interceptor.Invoke("~QDomNodeList", "~QDomNodeList()", typeof(void));
        }
        public void Dispose() {
            interceptor.Invoke("~QDomNodeList", "~QDomNodeList()", typeof(void));
        }
        public static bool operator==(QDomNodeList lhs, QDomNodeList arg1) {
            return (bool) staticInterceptor.Invoke("operator==#", "operator==(const QDomNodeList&) const", typeof(bool), typeof(QDomNodeList), lhs, typeof(QDomNodeList), arg1);
        }
        public static bool operator!=(QDomNodeList lhs, QDomNodeList arg1) {
            return !(bool) staticInterceptor.Invoke("operator==#", "operator==(const QDomNodeList&) const", typeof(bool), typeof(QDomNodeList), lhs, typeof(QDomNodeList), arg1);
        }
    }
}
