JSIDBKeyCustom.cpp revision 8f72e70a9fd78eec56623b3a62e68f16b7b27e28
1561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/*
2561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Copyright (C) 2009 Google Inc. All rights reserved.
3561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *
4561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Redistribution and use in source and binary forms, with or without
5561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * modification, are permitted provided that the following conditions are
6561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * met:
7561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *
8561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *     * Redistributions of source code must retain the above copyright
9561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * notice, this list of conditions and the following disclaimer.
10561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *     * Redistributions in binary form must reproduce the above
11561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * copyright notice, this list of conditions and the following disclaimer
12561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * in the documentation and/or other materials provided with the
13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * distribution.
14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *     * Neither the name of Google Inc. nor the names of its
15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * contributors may be used to endorse or promote products derived from
16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * this software without specific prior written permission.
17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes *
18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */
30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes#ifndef ScriptObjectQuarantine_h
32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes#define ScriptObjectQuarantine_h
33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes#include "ScriptState.h"
35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesnamespace WebCore {
37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    class Database;
39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    class Frame;
40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    class ScriptObject;
41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    class ScriptValue;
42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    class Storage;
43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
44561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    ScriptValue quarantineValue(ScriptState*, const ScriptValue&);
45561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
46561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    bool getQuarantinedScriptObject(Database* database, ScriptObject& quarantinedObject);
47561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes    bool getQuarantinedScriptObject(Frame* frame, Storage* storage, ScriptObject& quarantinedObject);
48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
49561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes}
50561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes
51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes#endif // ScriptObjectQuarantine_h
52561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes