MCPcopy Index your code
hub / github.com/clojure/clojure / emitArgsAsArray

Method emitArgsAsArray

src/jvm/clojure/lang/Compiler.java:1836–1846  ·  view source on GitHub ↗
(IPersistentVector args, ObjExpr objx, GeneratorAdapter gen)

Source from the content-addressed store, hash-verified

1834
1835static abstract class MethodExpr extends HostExpr{
1836 static void emitArgsAsArray(IPersistentVector args, ObjExpr objx, GeneratorAdapter gen){
1837 gen.push(args.count());
1838 gen.newArray(OBJECT_TYPE);
1839 for(int i = 0; i < args.count(); i++)
1840 {
1841 gen.dup();
1842 gen.push(i);
1843 ((Expr) args.nth(i)).emit(C.EXPRESSION, objx, gen);
1844 gen.arrayStore(OBJECT_TYPE);
1845 }
1846 }
1847
1848 public static void emitTypedArgs(ObjExpr objx, GeneratorAdapter gen, Class[] parameterTypes, IPersistentVector args){
1849 for(int i = 0; i < parameterTypes.length; i++)

Callers 9

emitMethod · 0.95
emitMethod · 0.95
emitMethod · 0.95
emitMethod · 0.95
emitMethod · 0.95
emitUnboxedMethod · 0.95
emitArgsAndCallMethod · 0.95
emitMethod · 0.80
emitMethod · 0.80

Calls 7

newArrayMethod · 0.80
dupMethod · 0.80
arrayStoreMethod · 0.80
countMethod · 0.65
emitMethod · 0.65
nthMethod · 0.65
pushMethod · 0.45

Tested by

no test coverage detected