parser/html/nsHtml5HtmlAttributes.h

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 /*
michael@0 2 * Copyright (c) 2007 Henri Sivonen
michael@0 3 * Copyright (c) 2008-2011 Mozilla Foundation
michael@0 4 *
michael@0 5 * Permission is hereby granted, free of charge, to any person obtaining a
michael@0 6 * copy of this software and associated documentation files (the "Software"),
michael@0 7 * to deal in the Software without restriction, including without limitation
michael@0 8 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
michael@0 9 * and/or sell copies of the Software, and to permit persons to whom the
michael@0 10 * Software is furnished to do so, subject to the following conditions:
michael@0 11 *
michael@0 12 * The above copyright notice and this permission notice shall be included in
michael@0 13 * all copies or substantial portions of the Software.
michael@0 14 *
michael@0 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
michael@0 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
michael@0 17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
michael@0 18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
michael@0 19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
michael@0 20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
michael@0 21 * DEALINGS IN THE SOFTWARE.
michael@0 22 */
michael@0 23
michael@0 24 /*
michael@0 25 * THIS IS A GENERATED FILE. PLEASE DO NOT EDIT.
michael@0 26 * Please edit HtmlAttributes.java instead and regenerate.
michael@0 27 */
michael@0 28
michael@0 29 #ifndef nsHtml5HtmlAttributes_h
michael@0 30 #define nsHtml5HtmlAttributes_h
michael@0 31
michael@0 32 #include "nsIAtom.h"
michael@0 33 #include "nsHtml5AtomTable.h"
michael@0 34 #include "nsString.h"
michael@0 35 #include "nsNameSpaceManager.h"
michael@0 36 #include "nsIContent.h"
michael@0 37 #include "nsTraceRefcnt.h"
michael@0 38 #include "jArray.h"
michael@0 39 #include "nsHtml5ArrayCopy.h"
michael@0 40 #include "nsAHtml5TreeBuilderState.h"
michael@0 41 #include "nsHtml5Atoms.h"
michael@0 42 #include "nsHtml5ByteReadable.h"
michael@0 43 #include "nsIUnicodeDecoder.h"
michael@0 44 #include "nsHtml5Macros.h"
michael@0 45 #include "nsIContentHandle.h"
michael@0 46
michael@0 47 class nsHtml5StreamParser;
michael@0 48
michael@0 49 class nsHtml5Tokenizer;
michael@0 50 class nsHtml5TreeBuilder;
michael@0 51 class nsHtml5MetaScanner;
michael@0 52 class nsHtml5AttributeName;
michael@0 53 class nsHtml5ElementName;
michael@0 54 class nsHtml5UTF16Buffer;
michael@0 55 class nsHtml5StateSnapshot;
michael@0 56 class nsHtml5Portability;
michael@0 57
michael@0 58
michael@0 59 class nsHtml5HtmlAttributes
michael@0 60 {
michael@0 61 public:
michael@0 62 static nsHtml5HtmlAttributes* EMPTY_ATTRIBUTES;
michael@0 63 private:
michael@0 64 int32_t mode;
michael@0 65 int32_t length;
michael@0 66 autoJArray<nsHtml5AttributeName*,int32_t> names;
michael@0 67 autoJArray<nsString*,int32_t> values;
michael@0 68 public:
michael@0 69 nsHtml5HtmlAttributes(int32_t mode);
michael@0 70 ~nsHtml5HtmlAttributes();
michael@0 71 int32_t getIndex(nsHtml5AttributeName* name);
michael@0 72 nsString* getValue(nsHtml5AttributeName* name);
michael@0 73 int32_t getLength();
michael@0 74 nsIAtom* getLocalNameNoBoundsCheck(int32_t index);
michael@0 75 int32_t getURINoBoundsCheck(int32_t index);
michael@0 76 nsIAtom* getPrefixNoBoundsCheck(int32_t index);
michael@0 77 nsString* getValueNoBoundsCheck(int32_t index);
michael@0 78 nsHtml5AttributeName* getAttributeNameNoBoundsCheck(int32_t index);
michael@0 79 void addAttribute(nsHtml5AttributeName* name, nsString* value);
michael@0 80 void clear(int32_t m);
michael@0 81 void releaseValue(int32_t i);
michael@0 82 void clearWithoutReleasingContents();
michael@0 83 bool contains(nsHtml5AttributeName* name);
michael@0 84 void adjustForMath();
michael@0 85 void adjustForSvg();
michael@0 86 nsHtml5HtmlAttributes* cloneAttributes(nsHtml5AtomTable* interner);
michael@0 87 bool equalsAnother(nsHtml5HtmlAttributes* other);
michael@0 88 static void initializeStatics();
michael@0 89 static void releaseStatics();
michael@0 90 };
michael@0 91
michael@0 92
michael@0 93
michael@0 94 #endif
michael@0 95

mercurial