diff -r 000000000000 -r 6474c204b198 rdf/base/idl/nsIRDFLiteral.idl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rdf/base/idl/nsIRDFLiteral.idl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,68 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIRDFNode.idl" + +%{C++ +#include "nscore.h" // for char16_t +%} + +[ptr] native const_octet_ptr(const uint8_t); + +/** + * A literal node in the graph, whose value is a string. + */ +[scriptable, uuid(E0C493D2-9542-11d2-8EB8-00805F29F370)] +interface nsIRDFLiteral : nsIRDFNode { + /** + * The Unicode string value of the literal. + */ + readonly attribute wstring Value; + + /** + * An unscriptable version used to avoid a string copy. Meant + * for use as a performance optimization. + */ + [noscript] void GetValueConst([shared] out wstring aConstValue); +}; + +/** + * A literal node in the graph, whose value is a date + */ +[scriptable, uuid(E13A24E1-C77A-11d2-80BE-006097B76B8E)] +interface nsIRDFDate : nsIRDFNode { + /** + * The date value of the literal + */ + readonly attribute PRTime Value; +}; + +/** + * A literal node in the graph, whose value is an integer + */ +[scriptable, uuid(E13A24E3-C77A-11d2-80BE-006097B76B8E)] +interface nsIRDFInt : nsIRDFNode { + /** + * The integer value of the literal + */ + readonly attribute long Value; +}; + +/** + * A literal node in the graph, whose value is arbitrary + * binary data. + */ +[scriptable, uuid(237f85a2-1dd2-11b2-94af-8122582fc45e)] +interface nsIRDFBlob : nsIRDFNode { + /** + * The binary data. + */ + [noscript] readonly attribute const_octet_ptr value; + + /** + * The data's length. + */ + readonly attribute long length; +};