本文整理汇总了Golang中C.free_string函数的典型用法代码示例。如果您正苦于以下问题:Golang free_string函数的具体用法?Golang free_string怎么用?Golang free_string使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了free_string函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: SaveFormatFileEnc
// xmlSaveFormatFileEnc
func (doc *Document) SaveFormatFileEnc(filename string, encoding string, format int) int {
ptrf := C.CString(filename)
defer C.free_string(ptrf)
ptre := C.CString(encoding)
defer C.free_string(ptre)
return int(C.xmlSaveFormatFileEnc(ptrf, doc.Ptr, ptre, C.int(format)))
}
示例2: LoadHtmlString
func (v *WebKitWebView) LoadHtmlString(content, base_uri string) {
pcontent := C.CString(content)
defer C.free_string(pcontent)
pbase_uri := C.CString(base_uri)
defer C.free_string(pbase_uri)
C.webkit_web_view_load_html_string(v.getWebView(), C.to_gcharptr(pcontent), C.to_gcharptr(pbase_uri))
}
示例3: SaveFileEnc
// htmlSaveFileEnc
func (doc *HTMLDocument) SaveFileEnc(filename string, encoding string) int {
ptrf := C.CString(filename)
defer C.free_string(ptrf)
ptre := C.CString(encoding)
defer C.free_string(ptre)
return int(C.htmlSaveFileEnc(ptrf, doc.Ptr, ptre))
}
示例4: NewNs
// xmlNewNs
func (node *Node) NewNs(href string, prefix string) *Namespace {
ptrh := C.CString(href)
defer C.free_string(ptrh)
ptrp := C.CString(prefix)
defer C.free_string(ptrp)
return makeNamespace(C.xmlNewNs(node.Ptr, C.to_xmlcharptr(ptrh), C.to_xmlcharptr(ptrp)))
}
示例5: loadHtmlString
func loadHtmlString(webview *C.GtkWidget, content, base_uri string) {
pcontent := C.CString(content)
defer C.free_string(pcontent)
pbase_uri := C.CString(base_uri)
defer C.free_string(pbase_uri)
C.loadHtmlString(webview, C.to_gcharptr(pcontent), C.to_gcharptr(pbase_uri))
}
示例6: NewProp
// xmlNewDocProp
func (doc *Document) NewProp(name string, value string) *Attribute {
ptrn := C.CString(name)
defer C.free_string(ptrn)
ptrv := C.CString(value)
defer C.free_string(ptrv)
cattr := C.xmlNewDocProp(doc.Ptr, C.to_xmlcharptr(ptrn), C.to_xmlcharptr(ptrv))
return makeAttribute(cattr)
}
示例7: ParseHTMLFile
// htmlParseFile
func ParseHTMLFile(filename string, encoding string) *HTMLDocument {
ptrf := C.CString(filename)
defer C.free_string(ptrf)
ptre := C.CString(encoding)
defer C.free_string(ptre)
doc := C.htmlParseFile(ptrf, ptre)
return makeHTMLDoc(doc)
}
示例8: ParseHTMLDoc
// htmlParseDoc
func ParseHTMLDoc(cur string, encoding string) *HTMLDocument {
ptrc := C.CString(cur)
defer C.free_string(ptrc)
ptre := C.CString(encoding)
defer C.free_string(ptre)
doc := C.htmlParseDoc(C.to_xmlcharptr(ptrc), ptre)
return makeHTMLDoc(doc)
}
示例9: ReadFile
// xmlReadFile
func ReadFile(filename string, encoding string, options ParserOption) *Document {
ptrf := C.CString(filename)
defer C.free_string(ptrf)
ptre := C.CString(encoding)
defer C.free_string(ptre)
doc := C.xmlReadFile(ptrf, ptre, C.int(options))
return makeDoc(doc)
}
示例10: ReadMemory
// xmlReadMemory
func ReadMemory(buffer []byte, url string, encoding string, options ParserOption) *Document {
ptru := C.CString(url)
defer C.free_string(ptru)
ptre := C.CString(encoding)
defer C.free_string(ptre)
doc := C.xmlReadMemory((*C.char)(unsafe.Pointer(&buffer[0])), C.int(len(buffer)), ptru, ptre, C.int(options))
return makeDoc(doc)
}
示例11: SetAttribute
// xmlSetProp
func (node *Node) SetAttribute(name string, value string) *Attribute {
ptrn := C.CString(name)
defer C.free_string(ptrn)
ptrv := C.CString(value)
defer C.free_string(ptrv)
cattr := C.xmlSetProp(node.Ptr, C.to_xmlcharptr(ptrn), C.to_xmlcharptr(ptrv))
return makeAttribute(cattr)
}
示例12: NewHTMLDoc
// htmlNewDoc
func NewHTMLDoc(uri string, external_id string) *HTMLDocument {
ptru := C.CString(uri)
defer C.free_string(ptru)
ptre := C.CString(external_id)
defer C.free_string(ptre)
doc := C.htmlNewDoc(C.to_xmlcharptr(ptru), C.to_xmlcharptr(ptre))
return makeHTMLDoc(doc)
}
示例13: ParseDTD
// xmlParseDTD
func ParseDTD(ExternalID string, SystemID string) *Dtd {
ptre := C.CString(ExternalID)
defer C.free_string(ptre)
ptrs := C.CString(SystemID)
defer C.free_string(ptrs)
cdtd := C.xmlParseDTD(C.to_xmlcharptr(ptre), C.to_xmlcharptr(ptrs))
return makeDtd(cdtd)
}
示例14: Set
func (v *GObject) Set(name string, value interface{}) {
ptr := C.CString(name)
defer C.free_string(ptr)
if _, ok := value.(WrappedObject); ok {
value = value.(WrappedObject).GetInternalValue()
}
if _, ok := value.(GObject); ok {
value = value.(GObject).Object
}
if _, ok := value.(GValue); ok {
value = value.(GValue).Value
}
switch value.(type) {
case bool:
bval := gbool(value.(bool))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&bval))
case byte:
bval := C.gchar(value.(byte))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&bval))
//C._g_object_set(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(reflect.ValueOf(C.gchar(value.(byte))).UnsafeAddr()))
case int:
ival := C.int(value.(int))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&ival))
case uint:
uval := C.guint(value.(uint))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&uval))
//C._g_object_set(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(reflect.ValueOf(C.guint(value.(uint))).UnsafeAddr()))
case float32:
f32val := C.gfloat(value.(float32))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&f32val))
//C._g_object_set(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(reflect.ValueOf(C.gfloat(value.(float64))).UnsafeAddr()))
case float64:
f64val := C.gfloat(value.(float64))
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&f64val))
//C._g_object_set(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(reflect.ValueOf(C.gfloat(value.(float64))).UnsafeAddr()))
case string:
pval := C.CString(value.(string))
defer C.free_string(pval)
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&pval))
default:
if pv, ok := value.(*[0]uint8); ok {
C._g_object_set_ptr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(pv))
} else {
av := reflect.ValueOf(value)
if av.Kind() == reflect.Ptr {
C._g_object_set_ptr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(av.Pointer()))
} else if av.CanAddr() {
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(av.UnsafeAddr()))
} else {
C._g_object_set_addr(C.gpointer(v.Object), C.to_gcharptr(ptr), unsafe.Pointer(&value))
}
}
}
}
示例15: NewTextChild
// xmlNewTextChild
func (node *Node) NewTextChild(ns *Namespace, name string, content string) *TextNode {
ptrn := C.CString(name)
defer C.free_string(ptrn)
ptrc := C.CString(content)
defer C.free_string(ptrc)
if ns == nil {
return makeTextNode(C.xmlNewTextChild(node.Ptr, nil, C.to_xmlcharptr(ptrn), C.to_xmlcharptr(ptrc)))
}
return makeTextNode(C.xmlNewTextChild(node.Ptr, ns.Ptr, C.to_xmlcharptr(ptrn), C.to_xmlcharptr(ptrc)))
}