Commit Graph

76 Commits

Author SHA1 Message Date
Jack Jansen 3adf8d1dae Converted to use re in stead of regex and regsub (finally:-). 2002-04-23 22:43:37 +00:00
Jack Jansen a6aa71deec Oops: we used PyMem_DEL() to clean up objects, and that's a problem since
pymalloc, apparently. Fixed, but this means all bgen-generated modules will
have to be re-generated.

I hope (and expect) that the pymalloc fixes aren't bugfix candidates, because
if they are this is one too.
2002-04-19 14:29:47 +00:00
Jack Jansen ededa90f67 - Added support for inherent pointer types (typedefs of arrays)
- Added a debug class variable to enable parser debugging.
2002-04-12 13:21:49 +00:00
Jack Jansen da70485694 Give type name when complaining about using input-only type for output
or v.v.
2002-04-12 13:14:54 +00:00
Jack Jansen 89dbd97279 Some structures should be passed to Py_BuildValue by reference, not by value,
notably FSSpec and FSRef objects. First half of fix for #531291.

2.2.1 candidate.
2002-03-18 15:24:22 +00:00
Jack Jansen dcfc20282b Added some support for Uicode arguments. Still leaves something to be desired, especially because of poor unicode support in PyArg_ParseTuple. 2002-01-01 22:40:08 +00:00
Jack Jansen f1472384dc Updated to current pathnames. 2002-01-01 22:39:07 +00:00
Jack Jansen 6f4f8c7fe1 Small change to allow for generation of QuickTime module for Windows. 2001-12-18 15:48:28 +00:00
Just van Rossum b48f1d3f8a OSX tweak: recognize both EXTERN_API_C and EXTERN_API declarations.
Jack: I hope I didn't break anything for you!
2001-12-12 20:51:22 +00:00
Jack Jansen 5801a2d8e3 The module generator now tells its object generators about the module name (through the new setmodulename() method). If the module name has been set the object generators output it as part of the tp_name field for the object type. 2001-12-09 23:25:00 +00:00
Jack Jansen b3be216b41 Merged changes made on r22b2-branch between r22b2 and r22b2-mac (the
changes from start of branch upto r22b2 were already merged, of course).
2001-11-30 14:16:36 +00:00
Jack Jansen 1062e706e5 Don't initialize tp_type statically, it won't work on Windows. Spotted
by Thomas Heller (patch 459442).
2001-11-14 15:48:13 +00:00
Jack Jansen fc6a89270e Don't override asplit_pat in Scanner_UH3. No reason to do so, and it broke
generating Waste.
2001-10-30 13:11:24 +00:00
Jack Jansen 5a1516bce5 Only output the buffer size error label if it is used.
Shuts up another couple of gcc warnings.
2001-09-05 10:27:53 +00:00
Jack Jansen d157b3795b Don't use a default "int" return type, gcc gives a warning about it. 2001-09-04 22:16:33 +00:00
Jack Jansen 9403591014 Fixes by Thomas Heller:
- make the selftests work again (they were apparently not used since
  very early in bgen's development), with some minor cleanup by me
- make emacs python mode happier
2001-08-27 14:30:55 +00:00
Jack Jansen 3d3a91c188 Oops, left in a debug statement. It's gone now. 2001-07-17 20:44:50 +00:00
Jack Jansen b2a1de4679 Allow [] after a parameter name. We currently take this to be the same as * in front, which isn't 100% correct but good enough. 2001-07-13 22:28:36 +00:00
Jack Jansen eefac35594 Added WeakLink...Generator classes (should have done that ages ago). These check the c-function pointer for being NULL before calling it and raise UnimplementedError if it is.
This allows system libs to be weak-linked, thereby allowing us to generate functions that are only available on some OS versions without getting a NULL dereference if the function isn't available.
2001-07-01 22:09:29 +00:00
Jack Jansen 1319abf745 Make basechain a class variable in stead of initializing it in __init__. That way it's more easily overridden. 2001-06-28 22:07:30 +00:00
Jack Jansen 4f0f1584fb Added a couple more types that Apple has taken a fancy to. 2001-06-27 21:58:40 +00:00
Jack Jansen ff1cc902fe Added a Parser_OSX class that can parse new-style (C-only) headers,
such as the Core Foundation ones.
2001-06-26 21:53:25 +00:00
Jack Jansen 656fe69383 Generate prototype-style function headers in stead of K&R style. Makes life easier with gcc -Wstrict-function-prototypes. 2001-05-19 13:59:18 +00:00
Jack Jansen 8a69373664 Dialog and Window objects are (finally) different beasts. 2001-02-27 11:05:00 +00:00
Jack Jansen d67566b0f0 Use the filename, not the pathname, in the definitions file
comment. This way the generated files are identical when generated on
different machines.
2001-02-27 11:04:20 +00:00
Jack Jansen 27489d4c8c Optionally weed out duplicate prototypes for the same function (which
happens because the scanner ignores preprocessor #ifs).
2000-12-12 22:24:35 +00:00
Jack Jansen c1a4a04792 Adapted to new standard for initmodule() routine: don't call
Py_FatalError on errors.
2000-12-12 22:22:59 +00:00
Jack Jansen 7e0c0050a8 Various new standard types. 2000-12-12 22:21:39 +00:00
Jack Jansen b8c68634b3 Added support for generating a single module from multiple .h files.
Allow /* */ comments within function prototypes.
2000-12-12 22:21:11 +00:00
Jack Jansen c8081e9bfa Modified the standard mac preamble so we include pymactoolbox.h in
stead of defining lots of function prototypes in each module.
2000-07-15 22:29:30 +00:00
Jack Jansen 629eee0636 ScannerPREUH3.initpatterns() should call Scanner.initpatterns() so the
new comment patterns get included.
2000-07-15 22:27:47 +00:00
Jack Jansen e3889da076 Make a distinction between shorts and unsigned shorts. 2000-07-06 15:17:52 +00:00
Guido van Rossum b7c298f806 Jack Jansen: Support for conditional inclusion of methods and functions 2000-06-28 20:53:33 +00:00
Guido van Rossum e56b4cf804 Jack Jansen: A few new types needed by new API calls. 2000-04-24 14:56:00 +00:00
Guido van Rossum f158887505 Two patches from Jack Jansen:
Three bgen mods:
- support for FSSpecs passed-by-value and points-passed-by-reference added.
- strip single-line comments when parsing header files
- if a definition is blacklisted _do_ output it, but in comment
2000-01-20 20:49:28 +00:00
Guido van Rossum fa968ac35b Patches by Jack Jansen: new type OptionalInBuffer allows
passing either a string/input buffer or None.
1999-09-30 14:15:14 +00:00
Guido van Rossum c7e7c60756 New mixin class that defines cmp and hash that use
the ob_itself pointer.  This allows (when using the mixin)
different Python objects pointing to the same C object and
behaving well as dictionary keys.

Or so sez Jack Jansen...
1999-03-15 16:37:54 +00:00
Guido van Rossum d2cd6f8c93 Small change by Jack Jansen.
Test for self.returntype behaving like OSErr rather than being it.
1999-03-09 16:05:26 +00:00
Guido van Rossum 92f01c54d4 accept * in return value type and convert it to _ptr after the
typename, as in argument types.
(Jack)
1998-04-28 16:04:50 +00:00
Guido van Rossum db9a7b9ef6 Style and StyleParameter are two different types.
(Jack)
1998-04-28 16:04:26 +00:00
Guido van Rossum 8b3c30c0eb class ByAddressType, a simple Type but passed by address even on
input.
(Jack)
1998-04-28 16:04:12 +00:00
Guido van Rossum 557f446618 Patches from Jack for new Apple headers 1998-02-23 15:30:44 +00:00
Guido van Rossum 845037018d Generate new style exception initializer (Jack). 1997-10-08 15:21:57 +00:00
Guido van Rossum 03be7f525e Changes by jack so the generated modules export their types
to Python.
1997-09-22 16:13:19 +00:00
Guido van Rossum dd6798c691 Added NumVersion definition. 1996-08-26 14:38:40 +00:00
Guido van Rossum c30461dd38 Insert filename in IOError message. 1996-08-26 14:37:47 +00:00
Guido van Rossum e47d5f9c52 Addition by Jack to test for missing type support 1996-07-21 02:49:55 +00:00
Guido van Rossum 814842f395 Removed most of the README text since it is all about the Mac specific
examples, which no longer live here.
1996-05-24 18:43:47 +00:00
Guido van Rossum d544d0126d Moved customization to bgenlocations.py module. 1996-04-12 16:39:00 +00:00
Jack Jansen 7d1eba9783 Added extra module argument varstuff, to declare extra module-level vars 1996-01-05 18:05:45 +00:00