public static TypeLibrary Load(IProcessorArchitecture arch, SerializedLibrary slib) { var tlldr = new TypeLibraryLoader(arch, true); var tlib = tlldr.Load(slib); return(tlib); }
public static TypeLibrary Load(Platform platform, SerializedLibrary slib) { var tlldr = new TypeLibraryLoader(platform, true); var tlib = tlldr.Load(slib); return(tlib); }
public void Tlldr_Empty() { Given_ArchitectureStub(); mr.ReplayAll(); var tlLdr = new TypeLibraryLoader(arch, true); TypeLibrary lib = tlLdr.Load(new SerializedLibrary()); }
public void Tlldr_bothordinalandname() { Given_ArchitectureStub(); mr.ReplayAll(); var tlLDr = new TypeLibraryLoader(platform, true); var slib = new SerializedLibrary { Procedures = { new Procedure_v1 { Name="foo", Ordinal=2, Signature = new SerializedSignature { ReturnValue = new Argument_v1 { Type = new VoidType_v1() } } } } }; var lib = tlLDr.Load(slib); mr.VerifyAll(); Assert.AreEqual(1, lib.ServicesByVector.Count); Assert.IsNotNull(lib.ServicesByVector[2]); }
public static TypeLibrary Load(Platform platform, SerializedLibrary slib) { var tlldr = new TypeLibraryLoader(platform, true); var tlib = tlldr.Load(slib); return tlib; }
public void Tlldr_typedef_ptr_int() { Given_ArchitectureStub(); Given_Arch_PointerDataType(PrimitiveType.Pointer32); mr.ReplayAll(); var tlLdr = new TypeLibraryLoader(arch, true); var slib = new SerializedLibrary { Types = new SerializedType[] { new SerializedTypedef { Name="pint", DataType= new PointerType_v1 { DataType = new PrimitiveType_v1 { Domain = Domain.SignedInt, ByteSize=4 } } } } }; var lib = tlLdr.Load(slib); Assert.AreEqual("(ptr int32)", lib.LookupType("pint").ToString()); }
public void Tlldr_typedef_int() { Given_ArchitectureStub(); mr.ReplayAll(); var tlLdr = new TypeLibraryLoader(arch, true); var slib = new SerializedLibrary { Types = new SerializedType[] { new SerializedTypedef { Name="int", DataType=new PrimitiveType_v1 { Domain = Domain.SignedInt, ByteSize=4 }} } }; var lib = tlLdr.Load(slib); Assert.AreSame(PrimitiveType.Int32, lib.LookupType("int")); }
public void Tlldr_void_fn() { Given_ArchitectureStub(); mr.ReplayAll(); var tlLdr = new TypeLibraryLoader(arch, true); var slib = new SerializedLibrary { Procedures = { new Procedure_v1 { Name="foo", Signature = new SerializedSignature { Convention="__cdecl", ReturnValue = new Argument_v1 { Type = new VoidType_v1() }, } } } }; var lib = tlLdr.Load(slib); mr.VerifyAll(); Assert.AreEqual( "void foo()", lib.Lookup("foo").ToString("foo")); }
public static TypeLibrary Load(IProcessorArchitecture arch, SerializedLibrary slib) { var tlldr = new TypeLibraryLoader(arch, true); var tlib = tlldr.Load(slib); return tlib; }