From 9d77d62c0c2824fdc5aac20cc58a9c91b62da5c5 Mon Sep 17 00:00:00 2001 From: reed Date: Sat, 9 Apr 2016 11:09:49 -0700 Subject: remove unused BML (binary xml) code BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1868423002 TBR= Review URL: https://codereview.chromium.org/1868423002 --- src/xml/SkBML_Verbs.h | 24 ------ src/xml/SkBML_XMLParser.cpp | 180 -------------------------------------------- 2 files changed, 204 deletions(-) delete mode 100644 src/xml/SkBML_Verbs.h delete mode 100644 src/xml/SkBML_XMLParser.cpp (limited to 'src/xml') diff --git a/src/xml/SkBML_Verbs.h b/src/xml/SkBML_Verbs.h deleted file mode 100644 index 17c34588fd..0000000000 --- a/src/xml/SkBML_Verbs.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright 2006 The Android Open Source Project - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - - -#ifndef SkBML_Verbs_DEFINED -#define SkBML_Verbs_DEFINED - -enum Verbs { - kStartElem_Value_Verb, - kStartElem_Index_Verb, - kEndElem_Verb, - kAttr_Value_Value_Verb, - kAttr_Value_Index_Verb, - kAttr_Index_Value_Verb, - kAttr_Index_Index_Verb, - - kVerbCount -}; - -#endif // SkBML_Verbs_DEFINED diff --git a/src/xml/SkBML_XMLParser.cpp b/src/xml/SkBML_XMLParser.cpp deleted file mode 100644 index 31d5a99a65..0000000000 --- a/src/xml/SkBML_XMLParser.cpp +++ /dev/null @@ -1,180 +0,0 @@ -/* - * Copyright 2006 The Android Open Source Project - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - - -#include "SkBML_XMLParser.h" -#include "SkBML_Verbs.h" -#include "SkStream.h" -#include "SkXMLWriter.h" - -static uint8_t rbyte(SkStream& s) -{ - uint8_t b; - SkDEBUGCODE(size_t size = ) s.read(&b, 1); - SkASSERT(size == 1); - return b; -} - -static int rdata(SkStream& s, int data) -{ - SkASSERT((data & ~31) == 0); - if (data == 31) - { - data = rbyte(s); - if (data == 0xFF) - { - data = rbyte(s); - data = (data << 8) | rbyte(s); - } - } - return data; -} - -static void set(char* array[256], int index, SkStream& s, int data) -{ - SkASSERT((unsigned)index <= 255); - - size_t size = rdata(s, data); - - if (array[index] == nullptr) - array[index] = (char*)sk_malloc_throw(size + 1); - else - { - if (strlen(array[index]) < size) - array[index] = (char*)sk_realloc_throw(array[index], size + 1); - } - - s.read(array[index], size); - array[index][size] = 0; -} - -static void freeAll(char* array[256]) -{ - for (int i = 0; i < 256; i++) - sk_free(array[i]); -} - -struct BMLW { - char* fElems[256]; - char* fNames[256]; - char* fValues[256]; - - // important that these are uint8_t, so we get automatic wrap-around - uint8_t fNextElem, fNextName, fNextValue; - - BMLW() - { - memset(fElems, 0, sizeof(fElems)); - memset(fNames, 0, sizeof(fNames)); - memset(fValues, 0, sizeof(fValues)); - - fNextElem = fNextName = fNextValue = 0; - } - ~BMLW() - { - freeAll(fElems); - freeAll(fNames); - freeAll(fValues); - } -}; - -static void rattr(unsigned verb, SkStream& s, BMLW& rec, SkXMLWriter& writer) -{ - int data = verb & 31; - verb >>= 5; - - int nameIndex, valueIndex; - - switch (verb) { - case kAttr_Value_Value_Verb: - nameIndex = rec.fNextName; // record before the ++ - set(rec.fNames, rec.fNextName++, s, data); - valueIndex = rec.fNextValue; // record before the ++ - set(rec.fValues, rec.fNextValue++, s, 31); - break; - case kAttr_Value_Index_Verb: - nameIndex = rec.fNextName; // record before the ++ - set(rec.fNames, rec.fNextName++, s, data); - valueIndex = rbyte(s); - break; - case kAttr_Index_Value_Verb: - nameIndex = rdata(s, data); - valueIndex = rec.fNextValue; // record before the ++ - set(rec.fValues, rec.fNextValue++, s, 31); - break; - case kAttr_Index_Index_Verb: - nameIndex = rdata(s, data); - valueIndex = rbyte(s); - break; - default: - SkDEBUGFAIL("bad verb"); - return; - } - writer.addAttribute(rec.fNames[nameIndex], rec.fValues[valueIndex]); -} - -static void relem(unsigned verb, SkStream& s, BMLW& rec, SkXMLWriter& writer) -{ - int data = verb & 31; - verb >>= 5; - - int elemIndex; - - if (verb == kStartElem_Value_Verb) - { - elemIndex = rec.fNextElem; // record before the ++ - set(rec.fElems, rec.fNextElem++, s, data); - } - else - { - SkASSERT(verb == kStartElem_Index_Verb); - elemIndex = rdata(s, data); - } - - writer.startElement(rec.fElems[elemIndex]); - - for (;;) - { - verb = rbyte(s); - switch (verb >> 5) { - case kAttr_Value_Value_Verb: - case kAttr_Value_Index_Verb: - case kAttr_Index_Value_Verb: - case kAttr_Index_Index_Verb: - rattr(verb, s, rec, writer); - break; - case kStartElem_Value_Verb: - case kStartElem_Index_Verb: - relem(verb, s, rec, writer); - break; - case kEndElem_Verb: - writer.endElement(); - return; - default: - SkDEBUGFAIL("bad verb"); - } - } -} - -void BML_XMLParser::Read(SkStream& s, SkXMLWriter& writer) -{ - BMLW rec; - writer.writeHeader(); - relem(rbyte(s), s, rec, writer); -} - -void BML_XMLParser::Read(SkStream& s, SkWStream& output) -{ - SkXMLStreamWriter writer(&output); - Read(s, writer); -} - -void BML_XMLParser::Read(SkStream& s, SkXMLParser& output) -{ - SkXMLParserWriter writer(&output); - Read(s, writer); -} -- cgit v1.2.3