# @api private # FFI bindings module Redland # Handling FFI difference between MRI and Rubinius if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby' require 'ffi' extend FFI::Library ffi_lib "rdf.so.0" else extend FFI::Library ffi_lib "librdf.so.0" end # World attach_function :librdf_new_world, [], :pointer attach_function :librdf_free_world, [:pointer], :void attach_function :librdf_world_open, [:pointer], :void # Storage attach_function :librdf_new_storage, [:pointer, :string, :string, :string], :pointer attach_function :librdf_free_storage, [:pointer], :void # Model attach_function :librdf_new_model, [:pointer, :pointer, :string], :pointer attach_function :librdf_free_model, [:pointer], :void attach_function :librdf_model_as_stream, [:pointer], :pointer attach_function :librdf_model_size, [:pointer], :int attach_function :librdf_model_find_statements, [:pointer, :pointer], :pointer attach_function :librdf_model_add_statement, [:pointer, :pointer], :int attach_function :librdf_model_remove_statement, [:pointer, :pointer], :int attach_function :librdf_model_transaction_start, [:pointer], :int attach_function :librdf_model_transaction_commit, [:pointer], :int attach_function :librdf_model_transaction_rollback, [:pointer], :int # Statement attach_function :librdf_free_statement, [:pointer], :void attach_function :librdf_new_statement_from_nodes, [:pointer, :pointer, :pointer, :pointer], :pointer attach_function :librdf_new_statement_from_statement, [:pointer], :pointer attach_function :librdf_statement_get_subject, [:pointer], :pointer attach_function :librdf_statement_get_predicate, [:pointer], :pointer attach_function :librdf_statement_get_object, [:pointer], :pointer attach_function :librdf_statement_set_subject, [:pointer, :pointer], :void attach_function :librdf_statement_set_predicate, [:pointer, :pointer], :void attach_function :librdf_statement_set_object, [:pointer, :pointer], :void attach_function :librdf_statement_to_string, [:pointer], :string # Node attach_function :librdf_free_node, [:pointer], :void attach_function :librdf_new_node_from_blank_identifier, [:pointer, :string], :pointer attach_function :librdf_new_node_from_uri_string, [:pointer, :string], :pointer attach_function :librdf_new_node_from_node, [:pointer], :pointer attach_function :librdf_new_node_from_typed_literal, [:pointer, :string, :string, :pointer], :pointer attach_function :librdf_node_is_resource, [:pointer], :int attach_function :librdf_node_is_literal, [:pointer], :int attach_function :librdf_node_is_blank, [:pointer], :int attach_function :librdf_node_get_literal_value, [:pointer], :string attach_function :librdf_node_get_literal_value_datatype_uri, [:pointer], :pointer attach_function :librdf_node_equals, [:pointer, :pointer], :int attach_function :librdf_node_to_string, [:pointer], :string attach_function :librdf_node_get_uri, [:pointer], :pointer # Stream attach_function :librdf_free_stream, [:pointer], :void attach_function :librdf_stream_end, [:pointer], :int attach_function :librdf_stream_next, [:pointer], :int attach_function :librdf_stream_get_object, [:pointer], :pointer # Serializer attach_function :librdf_new_serializer, [:pointer, :string, :string, :pointer], :pointer attach_function :librdf_free_serializer, [:pointer], :void attach_function :librdf_serializer_serialize_model_to_string, [:pointer, :pointer, :pointer], :string attach_function :librdf_serializer_serialize_model_to_file, [:pointer, :string, :pointer, :pointer], :int # Parser attach_function :librdf_new_parser, [:pointer, :string, :string, :pointer], :pointer attach_function :librdf_free_parser, [:pointer], :void attach_function :librdf_parser_parse_into_model, [:pointer, :pointer, :pointer, :pointer], :int attach_function :librdf_parser_parse_string_into_model, [:pointer, :string, :pointer, :pointer], :int attach_function :librdf_parser_parse_as_stream, [:pointer, :pointer, :pointer], :pointer attach_function :librdf_parser_parse_string_as_stream, [:pointer, :string, :pointer], :pointer # URI attach_function :librdf_new_uri, [:pointer, :string], :pointer attach_function :librdf_new_uri_from_uri, [:pointer], :pointer attach_function :librdf_free_uri, [:pointer], :void attach_function :librdf_uri_to_string, [:pointer], :string attach_function :librdf_uri_equals, [:pointer, :pointer], :int end