public IByteElement GetByteElement(NovFile file, ClassesContainer container, IByteElement parent) { ByteClass byteClass = new ByteClass(file, this.ClassName, Type); foreach (var method in this.Methods) { byteClass.Methods.Add((ByteMethod)method.Value.GetByteElement(container, byteClass)); } foreach (var field in this.Fields) { byteClass.Fields.Add((ByteField)field.Value.GetByteElement(container, byteClass)); } return(byteClass); }
public double ConvertBytes(double bytes, ByteClass typ) { switch (typ) { case ByteClass.Kilobyte: return(bytes / bytesInKB); case ByteClass.Megabyte: return(bytes / bytesInMB); case ByteClass.Gigabyte: return(bytes / bytesInGB); case ByteClass.Terabyte: return(bytes / bytesInTB); default: return(bytes); } }
private void BuildNovFile() { Method mainEntryPoint = Container.ComputeEntryPoint(); if (mainEntryPoint != null) { this.Result = new NovFile(); this.Result.MainPointEntry = new MainPointEntry(Container.GetClassId(mainEntryPoint.ParentClass), mainEntryPoint.Id); foreach (var @class in Container) { ByteClass byteClass = (ByteClass)@class.Value.GetByteElement(Result, Container, null); Result.ByteClasses.Add(byteClass); } } else { Logger.Write("Invalid or multiple program entry point.", LogType.Error); } }
public ByteBlock(ByteClass parentClass) { this.SymbolTable = new SymbolTable(); this.Instructions = new List <ICode>(); this.ParentClass = parentClass; }
public void LoadBuiltinClasses() { classes["Int"] = new IntClass(); classes["Float"] = new FloatClass(); classes["Boolean"] = new BooleanClass(); classes["String"] = new StringClass(); classes["Char"] = new CharClass(); classes["Byte"] = new ByteClass(); classes["Message"] = new MessageClass(); classes["Unassigned"] = new UnassignedClass(); classes["Tuple"] = new TupleClass(); classes["NameValue"] = new NameValueClass(); classes["Lambda"] = new LambdaClass(); classes["Void"] = new VoidClass(); classes["Some"] = new SomeClass(); classes["None"] = new NoneClass(); classes["Array"] = new ArrayClass(); classes["Iterator"] = new IteratorClass(); classes["LazyIterator"] = new LazyIteratorClass(); classes["StreamIterator"] = new StreamIteratorClass(); classes["Any"] = new AnyClass(); classes["Placeholder"] = new PlaceholderClass(); classes["Range"] = new RangeClass(); classes["Dictionary"] = new DictionaryClass(); classes["Container"] = new ContainerClass(); classes["Unmatched"] = new UnmatchedClass(); classes["Complex"] = new ComplexClass(); classes["Rational"] = new RationalClass(); classes["Long"] = new LongClass(); classes["Lazy"] = new LazyClass(); classes["YieldingInvokable"] = new YieldingInvokableClass(); classes["Del"] = new DelClass(); classes["Slice"] = new SliceClass(); classes["End"] = new EndClass(); classes["List"] = new ListClass(); classes["Arguments"] = new ArgumentsClass(); classes["Symbol"] = new SymbolClass(); classes["Infinity"] = new InfinityClass(); classes["OpenRange"] = new OpenRangeClass(); classes["KeyValue"] = new KeyValueClass(); classes["Regex"] = new RegexClass(); classes["Pattern"] = new PatternClass(); classes["PackageFunction"] = new PackageFunctionClass(); classes["Sys"] = new SysClass(); classes["Math"] = new MathClass(); classes["RuntimeFunction"] = new RuntimeFunctionClass(); classes["Reference"] = new ReferenceClass(); classes["Group"] = new RegexGroupClass(); classes["Match"] = new RegexMatchClass(); classes["Date"] = new DateClass(); classes["Interval"] = new IntervalClass(); classes["TypeConstraint"] = new TypeConstraintClass(); classes["ByteArray"] = new ByteArrayClass(); classes["Selector"] = new SelectorClass(); classes["Number"] = new NumberClass(); classes["Collection"] = new CollectionClass(); classes["TextFinding"] = new TextFindingClass(); classes["SkipTake"] = new SkipTakeClass(); classes["Constructor"] = new ConstructorClass(); classes["MutString"] = new MutStringClass(); classes["Error"] = new ErrorClass(); classes["Success"] = new SuccessClass(); classes["Failure"] = new FailureClass(); classes["Optional"] = new OptionalClass(); classes["Result"] = new ResultClass(); classes["Monad"] = new MonadClass(); classes["Unit"] = new UnitClass(); classes["YieldReturn"] = new YieldReturnClass(); classes["Index"] = new IndexClass(); classes["Cycle"] = new CycleClass(); classes["Set"] = new SetClass(); }
/// <summary> /// Method to receive, decode and check client connection type and color depth. /// </summary> public void ReceiveAndCheckClientCoreData() { this.networkConnectionType = rdpbcgrSessionContext.ClientNetworkConnectionType; this.supportedColorDepths = rdpbcgrSessionContext.supportedColorDepths; VerifyColorDepths(); }