clojure.lang
Class Compiler.ObjExpr

java.lang.Object
  extended by clojure.lang.Compiler.ObjExpr
Direct Known Subclasses:
Compiler.FnExpr, Compiler.NewInstanceExpr
Enclosing class:
Compiler

public static class Compiler.ObjExpr
extends Object


Field Summary
protected  boolean canBeDirect
           
protected  IPersistentMap classMeta
           
 Object tag
           
 
Constructor Summary
Compiler.ObjExpr(Object tag)
           
 
Method Summary
 IPersistentMap closes()
           
 int column()
           
 Class compiledClass()
           
 PersistentVector constants()
           
 int constantsID()
           
 void emit(Compiler.C context, Compiler.ObjExpr objx, GeneratorAdapter gen)
           
 void emitAssignLocal(GeneratorAdapter gen, Compiler.LocalBinding lb, clojure.lang.Compiler.Expr val)
           
 void emitConstant(GeneratorAdapter gen, int id)
           
 void emitKeyword(GeneratorAdapter gen, Keyword k)
           
 void emitLetFnInits(GeneratorAdapter gen, Compiler.ObjExpr objx, IPersistentSet letFnLocals)
           
protected  void emitMethods(ClassVisitor gen)
           
protected  void emitStatics(ClassVisitor gen)
           
 void emitVar(GeneratorAdapter gen, Var var)
           
 void emitVarValue(GeneratorAdapter gen, Var v)
           
 Object eval()
           
 Class getJavaClass()
           
 boolean hasJavaClass()
           
 String internalName()
           
 IPersistentMap keywords()
           
 int line()
           
 String name()
           
 Type objtype()
           
 String thisName()
           
 IPersistentMap vars()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tag

public final Object tag

classMeta

protected IPersistentMap classMeta

canBeDirect

protected boolean canBeDirect
Constructor Detail

Compiler.ObjExpr

public Compiler.ObjExpr(Object tag)
Method Detail

name

public final String name()

internalName

public final String internalName()

thisName

public final String thisName()

objtype

public final Type objtype()

closes

public final IPersistentMap closes()

keywords

public final IPersistentMap keywords()

vars

public final IPersistentMap vars()

compiledClass

public final Class compiledClass()

line

public final int line()

column

public final int column()

constants

public final PersistentVector constants()

constantsID

public final int constantsID()

emitStatics

protected void emitStatics(ClassVisitor gen)

emitMethods

protected void emitMethods(ClassVisitor gen)

eval

public Object eval()

emitLetFnInits

public void emitLetFnInits(GeneratorAdapter gen,
                           Compiler.ObjExpr objx,
                           IPersistentSet letFnLocals)

emit

public void emit(Compiler.C context,
                 Compiler.ObjExpr objx,
                 GeneratorAdapter gen)

hasJavaClass

public boolean hasJavaClass()

getJavaClass

public Class getJavaClass()

emitAssignLocal

public void emitAssignLocal(GeneratorAdapter gen,
                            Compiler.LocalBinding lb,
                            clojure.lang.Compiler.Expr val)

emitVar

public void emitVar(GeneratorAdapter gen,
                    Var var)

emitVarValue

public void emitVarValue(GeneratorAdapter gen,
                         Var v)

emitKeyword

public void emitKeyword(GeneratorAdapter gen,
                        Keyword k)

emitConstant

public void emitConstant(GeneratorAdapter gen,
                         int id)


Copyright © 2015. All Rights Reserved.