From: Robert Bradshaw Date: Tue, 13 Aug 2013 04:03:05 +0000 (-0700) Subject: Clarify cdef vs. def function arguments. X-Git-Tag: 0.20b1~324^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=aa2dccd224f0eeeed807276cd74fa358d48da0de;p=platform%2Fupstream%2Fpython-cython.git Clarify cdef vs. def function arguments. --HG-- extra : transplant_source : %86.-%DA%5C%B1%CE%B8%40%BD%BA%E2%F0%B6f%C40%EB%B0%08 --- diff --git a/docs/src/userguide/language_basics.rst b/docs/src/userguide/language_basics.rst index dd2308d..7c41c39 100644 --- a/docs/src/userguide/language_basics.rst +++ b/docs/src/userguide/language_basics.rst @@ -117,7 +117,14 @@ using normal C declaration syntax. For example,:: When a parameter of a Python function is declared to have a C data type, it is passed in as a Python object and automatically converted to a C value, if -possible. Automatic conversion is currently only possible for numeric types, +possible. In other words, the definition of `spam` above is equivalent to writing:: + + def spam(python_i, python_s): + int i = python_i + char* s = python_s + ... + +Automatic conversion is currently only possible for numeric types, string types and structs (composed recusively of any of these types); attempting to use any other type for the parameter of a Python function will result in a compile-time error.