glib-2.0: Support owned delegates with Idle.add
[vala-lang.git] / vapi / raptor.vapi
blob16ab86fa10da906398497fc2d2e5a575ac226925
1 /* raptor.vapi
2  *
3  * Copyright (C) 2008  Nokia
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
18  *
19  * Author:
20  *      Jürg Billeter <j@bitron.ch>
21  */
23 [CCode (cheader_filename = "raptor.h")]
24 namespace Raptor {
25         public enum IdentifierType {
26                 RESOURCE,
27                 ANONYMOUS,
28                 PREDICATE,
29                 ORDINAL,
30                 LITERAL,
31                 XML_LITERAL
32         }
34         [Compact]
35         [CCode (cname = "raptor_parser", free_function = "raptor_free_parser")]
36         public class Parser {
37                 [CCode (cname = "raptor_new_parser")]
38                 public Parser (string name);
39                 [CCode (cname = "raptor_set_statement_handler")]
40                 public void set_statement_handler ([CCode (delegate_target_pos = 0.9)] StatementHandler handler);
41                 [CCode (cname = "raptor_parse_file")]
42                 public void parse_file (Uri? uri, Uri? base_uri);
43                 [CCode (cname = "raptor_start_parse")]
44                 public void start_parse (Uri uri);
45         }
47         [Compact]
48         [CCode (cname = "raptor_statement")]
49         public class Statement {
50                 public void* subject;
51                 public void* predicate;
52                 public void* object;
53                 public IdentifierType object_type;
54         }
56         [CCode (cname = "raptor_statement_handler", instance_pos = 0)]
57         public delegate void StatementHandler (Statement statement);
59         [Compact]
60         [CCode (cname = "raptor_uri", free_function = "raptor_free_uri")]
61         public class Uri {
62                 [CCode (cname = "raptor_new_uri")]
63                 public Uri (string uri_string);
64                 public static string filename_to_uri_string (string filename);
65                 public weak string as_string ();
66         }