Example #1
0
        internal AttributeWrapper(GumboAttribute attribute, ElementWrapper parent, int index,
                                  Action <string, ElementWrapper> addElementWithId)
        {
            if (parent == null)
            {
                throw new ArgumentNullException("parent");
            }

            if (addElementWithId == null)
            {
                throw new ArgumentNullException("addElementWithId");
            }

            Parent        = parent;
            Index         = index;
            Name          = NativeUtf8Helper.StringFromNativeUtf8(attribute.name);
            Value         = NativeUtf8Helper.StringFromNativeUtf8(attribute.value);
            OriginalName  = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_name.data, (int)attribute.original_name.length);
            OriginalValue = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_value.data, (int)attribute.original_value.length);
            NameStart     = attribute.name_start;
            NameEnd       = attribute.name_end;
            ValueStart    = attribute.value_start;
            ValueEnd      = attribute.value_end;
            Namespace     = attribute.attr_namespace;

            if (String.Equals(this.Name, "id", StringComparison.OrdinalIgnoreCase))
            {
                addElementWithId(this.Value, parent);
            }
        }
Example #2
0
        public AttributeWrapper CreateAttributeWrapper(GumboAttribute attribute, ElementWrapper parent)
        {
            var attributeWrapper = new AttributeWrapper(attribute, parent);

            if (string.Equals(attributeWrapper.Name, "id", StringComparison.OrdinalIgnoreCase))
            {
                AddElementById(attributeWrapper.Value, parent);
            }
            return(attributeWrapper);
        }
Example #3
0
        internal AttributeWrapper(GumboAttribute attribute, ElementWrapper parent)
        {
            if (parent == null)
            {
                throw new ArgumentNullException(nameof(parent));
            }

            Parent        = parent;
            Name          = NativeUtf8Helper.StringFromNativeUtf8(attribute.name);
            Value         = NativeUtf8Helper.StringFromNativeUtf8(attribute.value);
            OriginalName  = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_name.data, (int)attribute.original_name.length);
            OriginalValue = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_value.data, (int)attribute.original_value.length);
            NameStart     = attribute.name_start;
            NameEnd       = attribute.name_end;
            ValueStart    = attribute.value_start;
            ValueEnd      = attribute.value_end;
            Namespace     = attribute.attr_namespace;
        }
        internal AttributeWrapper(GumboAttribute attribute, ElementWrapper parent)
        {
            if (parent == null)
            {
                throw new ArgumentNullException(nameof(parent));
            }

            Parent = parent;
            Name = NativeUtf8Helper.StringFromNativeUtf8(attribute.name);
            Value = NativeUtf8Helper.StringFromNativeUtf8(attribute.value);
            OriginalName = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_name.data, (int)attribute.original_name.length);
            OriginalValue = NativeUtf8Helper.StringFromNativeUtf8(attribute.original_value.data, (int)attribute.original_value.length);
            NameStart = attribute.name_start;
            NameEnd = attribute.name_end;
            ValueStart = attribute.value_start;
            ValueEnd = attribute.value_end;
            Namespace = attribute.attr_namespace;
        }