Changeset 11334
- Timestamp:
- 10/02/08 21:26:10 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/j/src/org/armedbear/lisp/Closure.java
r11331 r11334 292 292 } 293 293 294 // Also sets bindInitForms. 295 private final Symbol[] processVariables() 296 { 297 ArrayList<Symbol> vars = new ArrayList<Symbol>(); 298 if (requiredParameters != null) 299 { 300 for (Parameter parameter : requiredParameters) 301 vars.add(parameter.var); 302 } 303 if (optionalParameters != null) 304 { 305 for (Parameter parameter : optionalParameters) 294 private final void processParameters(ArrayList<Symbol> vars, 295 final Parameter[] parameters) 296 { 297 if (parameters != null) 298 { 299 for (Parameter parameter : parameters) 306 300 { 307 301 vars.add(parameter.var); … … 313 307 } 314 308 } 309 } 310 311 // Also sets bindInitForms. 312 private final Symbol[] processVariables() 313 { 314 ArrayList<Symbol> vars = new ArrayList<Symbol>(); 315 if (requiredParameters != null) 316 { 317 for (Parameter parameter : requiredParameters) 318 vars.add(parameter.var); 319 } 320 processParameters(vars, optionalParameters); 315 321 if (restVar != null) 316 322 { 317 323 vars.add(restVar); 318 324 } 319 if (keywordParameters != null) 320 { 321 for (Parameter parameter : keywordParameters) 322 { 323 vars.add(parameter.var); 324 if (parameter.svar != NIL) 325 vars.add((Symbol)parameter.svar); 326 if (!bindInitForms) 327 if (!parameter.initForm.constantp()) 328 bindInitForms = true; 329 } 330 } 325 processParameters(vars, keywordParameters); 331 326 Symbol[] array = new Symbol[vars.size()]; 332 327 vars.toArray(array);
Note: See TracChangeset
for help on using the changeset viewer.