Changeset 3852


Ignore:
Timestamp:
09/17/03 18:26:07 (19 years ago)
Author:
piso
Message:

Work in progress.

Location:
trunk/j/src/org/armedbear/lisp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/Makefile.in

    r3832 r3852  
    22
    33# Copyright (C) 2003 Peter Graves
    4 # $Id: Makefile.in,v 1.67 2003-09-16 19:01:08 piso Exp $
     4# $Id: Makefile.in,v 1.68 2003-09-17 18:26:06 piso Exp $
    55
    66# This program is free software; you can redistribute it and/or
     
    3939    CharacterInputStream.class \
    4040    CharacterOutputStream.class \
    41     ClassTypeSpecifier.class \
    4241    Closure.class \
    4342    CompiledFunction.class \
     
    7877    Module.class \
    7978    Nil.class \
    80     NullTypeSpecifier.class \
    8179    Package.class \
    8280    PackageError.class \
  • trunk/j/src/org/armedbear/lisp/Type.java

    r3704 r3852  
    33 *
    44 * Copyright (C) 2003 Peter Graves
    5  * $Id: Type.java,v 1.20 2003-09-11 16:06:05 piso Exp $
     5 * $Id: Type.java,v 1.21 2003-09-17 18:26:06 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    9898    }
    9999
    100     public LispObject isSubtypeOf(Type otherType)
    101     {
    102         final boolean b = _isSubtypeOf(otherType);
    103         LispObject subtypep = b ? Symbol.T : NIL;
    104         LispObject validp = Symbol.T; // For now.
    105         LispObject[] values = new LispObject[2];
    106         values[0] = subtypep;
    107         values[1] = validp;
    108         LispThread.currentThread().setValues(values);
    109         return subtypep;
    110     }
    111 
    112     public boolean _isSubtypeOf(Type otherType)
    113     {
    114         if (otherType == this)
    115             return true;
    116         for (int i = 0; i < supertypes.size(); i++) {
    117             if (supertypes.get(i) == otherType)
    118                 return true;
    119         }
    120         for (int i = 0; i < supertypes.size(); i++) {
    121             Type supertype = (Type) supertypes.get(i);
    122             // Avoid loops!
    123             if (supertype._isSubtypeOf(this))
    124                 continue;
    125             if (supertype._isSubtypeOf(otherType))
    126                 return true;
    127         }
    128         return false;
    129     }
     100//     public boolean _isSubtypeOf(Type otherType)
     101//     {
     102//         if (otherType == this)
     103//             return true;
     104//         for (int i = 0; i < supertypes.size(); i++) {
     105//             if (supertypes.get(i) == otherType)
     106//                 return true;
     107//         }
     108//         for (int i = 0; i < supertypes.size(); i++) {
     109//             Type supertype = (Type) supertypes.get(i);
     110//             // Avoid loops!
     111//             if (supertype._isSubtypeOf(this))
     112//                 continue;
     113//             if (supertype._isSubtypeOf(otherType))
     114//                 return true;
     115//         }
     116//         return false;
     117//     }
    130118
    131119    public String toString()
     
    139127
    140128    public static final Type TYPE_NIL  = new Type((Symbol)NIL) {
    141         public boolean _isSubtypeOf(Type otherType)
    142         {
    143             return true;
    144         }
     129//         public boolean _isSubtypeOf(Type otherType)
     130//         {
     131//             return true;
     132//         }
    145133    };
    146134
Note: See TracChangeset for help on using the changeset viewer.