You get a compile error if you don't dispose of our objects correctly or use them after they've been disposed of! Now that sounds like progress.
By defining ‘curl_easy_cleanup’ in this way we enforce a contract which states that the programmer must call this function if they have a live ‘CURLptr l’ object. You can see this in practice if you remove the cleanup call and try to compile. A compile error will result. A compile error will also occur if you try to use the curl handle after the cleanup call.
Wednesday, June 2, 2010
What's that ATS thing?
ATS rocks the shootout, and now grandmaster Chris Double shows how to achieve remarkable feats using its (dependent and linear) type system: