public static PackageContainer CreateContainers(PackageContainer parent, MemberName mn, Location loc, CompilationSourceFile file) { if (mn.Left != null) { PackageContainer left = CreateContainers(parent, mn.Left, loc, file); PackageContainer current = new PackageContainer(left, mn.Name, loc, file); left.AddChildNamespace(current); return(current); } else { var c = new PackageContainer(parent, mn.Name, loc, file); parent.AddChildNamespace(c); return(c); } }
public EnumDeclaration(TypeContainer parent, FullNamedExpression type, Modifiers mod_flags, MemberName name, VSharpAttributes attrs, CompilationSourceFile file) : base(parent, mod_flags, AllowedModifiers, name, attrs, name.Location, TypeKind.Enum, file) { if (type != null) { SetBaseTypes(type); } mod_flags |= Modifiers.SEALED; }
public ClassOrStructDeclaration(TypeContainer ns, Modifiers mods, Modifiers allowed, MemberName name, VSharpAttributes attr, Location l, TypeKind kind, CompilationSourceFile file) : base(ns, mods, allowed, name, attr, l, kind, file) { }
public StructDeclaration(TypeContainer parent, MemberName name, Modifiers mod, VSharpAttributes attrs, Location l, CompilationSourceFile file) : base(parent, mod, AllowedModifiers, name, attrs, l, TypeKind.Struct, file) { mod_flags |= Modifiers.SEALED; }
public TypeDeclaration(TypeContainer ns, Modifiers mods, Modifiers allowed, MemberName name, VSharpAttributes attr, Location l, TypeKind kind, CompilationSourceFile file) : base(ns, name, l, file) { if (attr != null) { this.AddAttributes(attr); } this.mod_flags = mods; this.mod_flags = ModifiersExtensions.Check(allowed, mods, ns.Name == "default" ? Modifiers.INTERNAL : Modifiers.PRIVATE, l, Report); this.Kind = kind; }
public ClassDeclaration(PackageContainer parent, MemberName name, Modifiers mod, VSharpAttributes attrs, Location l, CompilationSourceFile file) : base(parent, mod, AllowedModifiers, name, attrs, l, TypeKind.Class, file) { }
private AnonymousTypeClass(CompilationSourceFile f, MemberName name, IList <AnonymousTypeParameter> parameters, Location loc) : base(f.RootPackage, name, Modifiers.PUBLIC, f) { this.parameters = parameters; }
protected CompilerGeneratedContainer(TypeContainer parent, MemberName name, Modifiers mod, TypeKind kind, CompilationSourceFile f) : base(parent, mod, mod, name, null, Location.Null, kind, f) { ModFlags = mod | Modifiers.COMPILER_GENERATED | Modifiers.SEALED; }
protected CompilerGeneratedContainer(PackageContainer parent, MemberName name, Modifiers mod, CompilationSourceFile f) : this(parent, name, mod, TypeKind.Class, f) { }
public InterfaceDeclaration(TypeContainer parent, MemberName name, Modifiers mod, VSharpAttributes attrs, Location l, CompilationSourceFile file) : base(parent, mod, AllowedModifiers, name, attrs, l, TypeKind.Interface, file) { mod_flags |= Modifiers.ABSTRACT; }