Changeset 10252


Ignore:
Timestamp:
10/28/05 12:19:21 (16 years ago)
Author:
piso
Message:

forClassRef() => javaClass()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/Java.java

    r10251 r10252  
    33 *
    44 * Copyright (C) 2002-2005 Peter Graves, Andras Simon
    5  * $Id: Java.java,v 1.56 2005-10-28 00:13:05 piso Exp $
     5 * $Id: Java.java,v 1.57 2005-10-28 12:19:21 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    5454        public LispObject execute(LispObject arg) throws ConditionThrowable
    5555        {
    56             return new JavaObject(classForName(javaString(arg)));
     56            return new JavaObject(javaClass(arg));
    5757        }
    5858    };
     
    114114                    // Cases 1-5.
    115115                    fieldName = args[1].getStringValue();
    116                     c = forClassRef(args[0]);
     116                    c = javaClass(args[0]);
    117117                } else {
    118118                    // Cases 6 and 7.
     
    186186                signal(new WrongNumberOfArgumentsException(this));
    187187            try {
    188                 final Class c = forClassRef(args[0]);
     188                final Class c = javaClass(args[0]);
    189189                int argCount = 0;
    190190                if (args.length == 2 && args[1] instanceof Fixnum) {
     
    193193                    Class[] parameterTypes = new Class[args.length-1];
    194194                    for (int i = 1; i < args.length; i++) {
    195                         parameterTypes[i-1] = forClassRef(args[i]);
     195                        parameterTypes[i-1] = javaClass(args[i]);
    196196                    }
    197197                    return new JavaObject(c.getConstructor(parameterTypes));
     
    229229            if (args.length < 2)
    230230                signal(new WrongNumberOfArgumentsException(this));
    231             final Class c = forClassRef(args[0]);
     231            final Class c = javaClass(args[0]);
    232232            String methodName = args[1].getStringValue();
    233233            try {
     
    238238                    Class[] parameterTypes = new Class[args.length-2];
    239239                    for (int i = 2; i < args.length; i++)
    240                         parameterTypes[i-2] = forClassRef(args[i]);
     240                        parameterTypes[i-2] = javaClass(args[i]);
    241241                    return new JavaObject(c.getMethod(methodName,
    242242                                                      parameterTypes));
     
    304304                        m = (Method) obj;
    305305                } else if (methodRef instanceof AbstractString) {
    306                     Class c = forClassRef(args[1]);
     306                    Class c = javaClass(args[1]);
    307307                    if (c != null) {
    308308                        String methodName = methodRef.getStringValue();
     
    394394                signal(new WrongNumberOfArgumentsException(this));
    395395            try {
    396                 Class c = forClassRef(args[0]);
     396                Class c = javaClass(args[0]);
    397397                int[] dimensions = new int[args.length - 1];
    398398                for (int i = 1; i < args.length; i++)
     
    643643
    644644    // Supports Java primitive types too.
    645     private static Class forClassRef(LispObject obj) throws ConditionThrowable
    646     {
    647         if (obj instanceof AbstractString) {
    648             String s = obj.getStringValue();
     645    private static Class javaClass(LispObject obj) throws ConditionThrowable
     646    {
     647        if (obj instanceof AbstractString || obj instanceof Symbol) {
     648            String s = javaString(obj);
    649649            if (s.equals("boolean"))
    650650                return Boolean.TYPE;
Note: See TracChangeset for help on using the changeset viewer.