예제 #1
0
파일: AST.cs 프로젝트: knapiontek/therion
 public void Watch(Define candidate)
 {
     if (candidateList == DefineList.none)
     {
         candidateList = new DefineList();
     }
     candidateList.Add(candidate);
 }
예제 #2
0
파일: AST.cs 프로젝트: knapiontek/therion
        public Worker(Define root)
        {
            var boolean = new Final(Define.boolean);

            root.fieldList = new DefineList();
            root.fieldList.Add(Define.nil);
            AddOps(root, Define.boolean, boolean);
            AddOps(root, Define.int1, boolean);
            AddOps(root, Define.int2, boolean);
            AddOps(root, Define.int4, boolean);
            AddOps(root, Define.int8, boolean);
            AddOps(root, Define.uint1, boolean);
            AddOps(root, Define.uint2, boolean);
            AddOps(root, Define.uint4, boolean);
            AddOps(root, Define.uint8, boolean);
            AddOps(root, Define.float8, boolean);
            AddOps(root, Define.float12, boolean);
            AddOps(root, Define.unicode, boolean);
            list.Add(root);
        }
예제 #3
0
파일: AST.cs 프로젝트: knapiontek/therion
 public DefineList Clone()
 {
     if (IsMutable)
     {
         var defineList = new DefineList();
         foreach (var define in this)
         {
             defineList.Add(define.Clone());
         }
         return(defineList);
     }
     return(this);
 }
예제 #4
0
 public Scope(Define root)
 {
     list.Add(root);
 }