1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-24 06:20:43 -08:00
Commit graph

56 commits

Author SHA1 Message Date
Richard Brooksby
1e39e959e7 Making init a method on inst and using it as next-method in segments.
Copied from Perforce
 Change: 191603
 ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
5f7db268e2 Making finish a method on inst and implementing generic finish for segments.
Copied from Perforce
 Change: 191602
 ServerID: perforce.ravenbrook.com
2016-04-23 15:37:12 +01:00
Richard Brooksby
b9e791798b Making describe a method on inst and implementing generic describe for segments.
Copied from Perforce
 Change: 191601
 ServerID: perforce.ravenbrook.com
2016-04-23 15:37:11 +01:00
Gareth Rees
82690aa532 Untabify.
Copied from Perforce
 Change: 191528
 ServerID: perforce.ravenbrook.com
2016-04-21 20:50:45 +01:00
Richard Brooksby
4a8e015d30 Typo.
Copied from Perforce
 Change: 191479
 ServerID: perforce.ravenbrook.com
2016-04-21 15:27:41 +01:00
Richard Brooksby
af037d483c Squelching bogus type pun warnings from gcc 4.7 to get a clean build in travis ci.
Adding platform XCI6GC to allow faster debugging of CI builds on Mac OS X with MacPorts GCC 4.7 installed.  Not otherwise supported.

Copied from Perforce
 Change: 191357
 ServerID: perforce.ravenbrook.com
2016-04-20 13:59:23 +01:00
Richard Brooksby
65a770e91f Avoid using "class" as an identifier, since tools like lldb parse expressions as c++, and it can't be named.
Copied from Perforce
 Change: 191304
 ServerID: perforce.ravenbrook.com
2016-04-19 23:00:02 +01:00
Richard Brooksby
6e21f091a4 Eliminating classdef.h by defining the class level when declaring a class.
Copied from Perforce
 Change: 191235
 ServerID: perforce.ravenbrook.com
2016-04-19 14:59:30 +01:00
Richard Brooksby
033aeda023 Using the address of the class as its id as a step to eliminating classdef.h.
Copied from Perforce
 Change: 191234
 ServerID: perforce.ravenbrook.com
2016-04-19 14:21:29 +01:00
Richard Brooksby
4028e56921 Improving documentation in response to review by gdr.
See <https://info.ravenbrook.com/mail/2016/04/14/10-02-00/0/> and <https://info.ravenbrook.com/mail/2016/04/14/11-21-48/0/>.

Copied from Perforce
 Change: 191229
 ServerID: perforce.ravenbrook.com
2016-04-19 13:28:00 +01:00
Richard Brooksby
e0faea0c13 Adding instdescribe as the ultimate base describe method.
Copied from Perforce
 Change: 191073
 ServerID: perforce.ravenbrook.com
2016-04-12 20:53:42 +01:00
Richard Brooksby
217642758d Interning strings for all classes to the event system, not just the hacky one for pool classes.
Copied from Perforce
 Change: 191071
 ServerID: perforce.ravenbrook.com
2016-04-12 18:44:05 +01:00
Richard Brooksby
21c319cd3b Prevent race and then infinite regress when initializing the root classes.
Copied from Perforce
 Change: 190981
 ServerID: perforce.ravenbrook.com
2016-04-12 12:22:58 +01:00
Richard Brooksby
c3068a987b Fixing instclass initialisation of its own class.
Properly bracketing cast expression in CouldBeA.

Copied from Perforce
 Change: 190968
 ServerID: perforce.ravenbrook.com
2016-04-12 00:57:00 +01:00
Richard Brooksby
9719646f07 Commentary and design document improvements.
Copied from Perforce
 Change: 190967
 ServerID: perforce.ravenbrook.com
2016-04-12 00:09:17 +01:00
Richard Brooksby
b4fbe7ba92 Making classes into instances of kinds, allowing subclass tests to be used to validate classes as well.
Copied from Perforce
 Change: 190958
 ServerID: perforce.ravenbrook.com
2016-04-11 20:58:39 +01:00
Richard Brooksby
ef6e2970ca Eliminating generated classof* and setclassof* functions in favour of checked poly macros.
Copied from Perforce
 Change: 190938
 ServerID: perforce.ravenbrook.com
2016-04-11 18:06:47 +01:00
Richard Brooksby
6d8d4373c9 Checking that classes are the right kind using signatures.
Copied from Perforce
 Change: 190936
 ServerID: perforce.ravenbrook.com
2016-04-11 17:38:47 +01:00
Richard Brooksby
309fb8ec64 Implementing nextmethod and replacing all uses of superclass with it.
Copied from Perforce
 Change: 190935
 ServerID: perforce.ravenbrook.com
2016-04-11 16:54:39 +01:00
Richard Brooksby
aa4036fbfd Implementing mustbea_critical and elision of mustbea assertions in different varieties.
Copied from Perforce
 Change: 190925
 ServerID: perforce.ravenbrook.com
2016-04-11 16:09:29 +01:00
Richard Brooksby
a148490cfa Adding classname for use in describe methods.
Fixing error path to use class destroy in ArenaCreate.
Using MustBeA to reduce boiler plate in land classes.

Copied from Perforce
 Change: 190904
 ServerID: perforce.ravenbrook.com
2016-04-11 14:06:28 +01:00
Richard Brooksby
781457ad4e Noting potential optimisation of superclass.
Copied from Perforce
 Change: 190886
 ServerID: perforce.ravenbrook.com
2016-04-11 06:36:28 +01:00
Richard Brooksby
d303ed0aeb Turning pool init methods the right way in, so that they each call the next method up the class hierarchy.
Copied from Perforce
 Change: 190858
 ServerID: perforce.ravenbrook.com
2016-04-10 17:49:08 +01:00
Richard Brooksby
907494aa56 Adding instinit and instfinish and using them as next methods in seginit, segfinish, etc.
Copied from Perforce
 Change: 190857
 ServerID: perforce.ravenbrook.com
2016-04-10 15:33:17 +01:00
Richard Brooksby
b6219b10a6 Fixing level of instclass so that class checks work properly.
Copied from Perforce
 Change: 190851
 ServerID: perforce.ravenbrook.com
2016-04-10 12:33:47 +01:00
Richard Brooksby
6a732464b3 Repairing superclass by taking a kind, which can later be checked.
Copied from Perforce
 Change: 190850
 ServerID: perforce.ravenbrook.com
2016-04-10 12:28:51 +01:00
Richard Brooksby
9480adaf7c Fixing mustbea to not return a void *.
Copied from Perforce
 Change: 190849
 ServerID: perforce.ravenbrook.com
2016-04-08 20:29:33 +01:00
Richard Brooksby
24a1aaa4d8 Generating type-safe functions for getting and setting the class of instances.
Fixing warning revealed by GCC that I wasn't actually checking classes after init.
Fixing abstract classes so that they pass their own checks!

Copied from Perforce
 Change: 190837
 ServerID: perforce.ravenbrook.com
2016-04-08 19:50:12 +01:00
Richard Brooksby
fc269fd07a Using common code for class getters and setters.
Copied from Perforce
 Change: 190836
 ServerID: perforce.ravenbrook.com
2016-04-08 18:33:34 +01:00
Richard Brooksby
c92bf9505a Explicitly making inststruct the prefix of instances, eliminating pointer punning of class pointers, and reducing likelihood of editing errors.
Copied from Perforce
 Change: 190830
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
dad08f0000 Eliminating issubclasspoly and replacing with compile-time constant test.
Copied from Perforce
 Change: 190829
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
65bbea0f0d Replacing prime factor subclass test with array-based test, because the type ids were overflowing 32 bits.
Copied from Perforce
 Change: 190828
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
c4bcc24759 Generating a static superclass mapping and eliminating other superclass macros.
Copied from Perforce
 Change: 190827
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
aab7cc0a18 Implementing isa, mustbea, couldbea, and reshaping the land classes to put the init, finish, and describe methods the right way in.
Copied from Perforce
 Change: 190826
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
4207b9ebf8 Eliminating the concept of "alias classes" in favour of "kinds".
Copied from Perforce
 Change: 190825
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
e5efe2849f Referring to classes by their base identifiers.
Copied from Perforce
 Change: 190823
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
d3d57e828d Renaming protocolinst to inst and protocolclass to instclass to make naming consistent with other classes.
Copied from Perforce
 Change: 190822
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
9a0a5a4c12 Using prime factors to determine subclass relationships quickly.
Copied from Perforce
 Change: 190817
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
590c23a935 Moving common fields into the base class, starting with the class name.
Copied from Perforce
 Change: 190816
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
20dbb8314f Removing never-used multiple inheritance speculation.
Copied from Perforce
 Change: 190815
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
e7fa1fd3bb Eliminating structure copy by sharing class init method.
Copied from Perforce
 Change: 190814
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
4f086a873a Sharing definition of class declaration in class definition.
Copied from Perforce
 Change: 190813
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
3e978abde6 Abstracting class declarations and references to classes.
Copied from Perforce
 Change: 190812
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
8007f484a8 Getting rid of "old style" class ensure functions.
Copied from Perforce
 Change: 190811
 ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Kistruck
fc0b9bf4ba Mps: fix w3i3mv "all" build with vc6:
1. amsss.c: initialize ambigRoot (uninitialized warning);
2. commpost.nmk: 
2a. drop long-vanished protcv.exe;
2b. mpmss.exe needs MVFF;
2c. locusss.exe had no build rule;
3. finaltest.c: main does not use argc,v so declare as main(void);
4. lockutw3.c: add parens to avoid operator-precedence warning;
5. protocol.h: s/interface/interfaceIn: suspected compiler bug.

Copied from Perforce
 Change: 158054
 ServerID: perforce.ravenbrook.com
2006-04-07 15:56:43 +01:00
Richard Brooksby
78ef580722 Eliminating "impl" type tags and replacing them with uri-style file references.
Copied from Perforce
 Change: 29900
 ServerID: perforce.ravenbrook.com
2002-06-07 17:34:59 +01:00
Richard Brooksby
97075f7053 Updating cross references to design documents to html style, to go with master/design document tree.
Copied from Perforce
 Change: 29897
 ServerID: perforce.ravenbrook.com
2002-06-07 16:47:14 +01:00
Richard Brooksby
a0f676c8e1 Adding forward reference to licenses from copyright notices.
Adding licenses to a couple of files I missed.

Copied from Perforce
 Change: 29837
 ServerID: perforce.ravenbrook.com
2002-06-06 11:56:19 +01:00
Richard Brooksby
4301a6db0a Adding licenses to source code files.
Copied from Perforce
 Change: 29836
 ServerID: perforce.ravenbrook.com
2002-06-06 11:44:23 +01:00
Nick Barnes
db4b3a6fa5 Remove trailing whitespace.
Copied from Perforce
 Change: 25309
 ServerID: perforce.ravenbrook.com
2001-12-17 15:18:17 +00:00