mirror of https://github.com/tbklang/tlang.git
Bruh
This commit is contained in:
parent
b1219c20d5
commit
1596bedc35
|
@ -14,7 +14,7 @@ import compiler.symbols.typing.core;
|
|||
import compiler.symbols.typing.builtins;
|
||||
import compiler.typecheck.dependency;
|
||||
|
||||
public final class ExpressionDNode : DNode
|
||||
public class ExpressionDNode : DNode
|
||||
{
|
||||
private Expression expression;
|
||||
|
||||
|
@ -30,4 +30,33 @@ public final class ExpressionDNode : DNode
|
|||
{
|
||||
name = "[expression]";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* AccessNode
|
||||
*
|
||||
* An AccessNode represents a accessor call
|
||||
* This can be as simple as `a` or `a.a`
|
||||
*/
|
||||
public class AccessDNode : DNode
|
||||
{
|
||||
/**
|
||||
* Construct a new AccessNode given the `entity`
|
||||
* being accessed
|
||||
*/
|
||||
this(DNodeGenerator dnodegen, Entity entity)
|
||||
{
|
||||
super(dnodegen, entity);
|
||||
// this.entity = entity;
|
||||
|
||||
|
||||
initName();
|
||||
}
|
||||
|
||||
private void initName()
|
||||
{
|
||||
name = resolver.generateName(cast(Container)dnodegen.root.getEntity(), cast(Entity)entity);
|
||||
name = "[AccessNode] (Name: "~name~")";
|
||||
|
||||
}
|
||||
}
|
|
@ -12,6 +12,6 @@ public class TError : Exception
|
|||
|
||||
//super(messageBytes);
|
||||
|
||||
super("");
|
||||
super(message);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
module typeChecking2;
|
||||
|
||||
A aInstance;
|
||||
B bInstance;
|
||||
|
||||
int j = k;
|
||||
int k = j;
|
||||
|
||||
|
||||
class A
|
||||
{
|
||||
static int pStatic;
|
||||
static B bInstanceStatic;
|
||||
static A aInstanceStaticMoi;
|
||||
|
||||
int poes;
|
||||
}
|
||||
|
||||
class B
|
||||
{
|
||||
static int jStatic;
|
||||
static A aInstanceStatic;
|
||||
}
|
||||
|
||||
class C
|
||||
{
|
||||
static int j=k;
|
||||
static int k;
|
||||
int p;
|
||||
}
|
Loading…
Reference in New Issue