Skip to content
This repository was archived by the owner on Jun 28, 2025. It is now read-only.

Commit 279c8a0

Browse files
committed
Implement xs:complexRestrictionType
1 parent 9b90523 commit 279c8a0

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace SimpleSAML\XSD\XML\xsd;
6+
7+
use SimpleSAML\XML\Type\{IDValue, QNameValue};
8+
9+
/**
10+
* Abstract class representing the complexRestrictionType-type.
11+
*
12+
* @package simplesamlphp/xml-xsd
13+
*/
14+
abstract class AbstractComplexRestrictionType extends AbstractRestrictionType
15+
{
16+
use AttrDeclsTrait;
17+
use SimpleRestrictionModelTrait;
18+
19+
/**
20+
* AbstractRestrictionType constructor
21+
*
22+
* @param \SimpleSAML\XML\Type\QNameValue $base
23+
* @param \SimpleSAML\XSD\XML\xsd\TypeDefParticleInterface|null $particle
24+
* @param array<\SimpleSAML\XSD\XML\xsd\Attribute|\SimpleSAML\XSD\XML\xsd\ReferencedAttributeGroup> $attributes
25+
* @param \SimpleSAML\XSD\XML\xsd\AnyAttribute|null $anyAttribute
26+
* @param \SimpleSAML\XSD\XML\xsd\Annotation|null $annotation
27+
* @param \SimpleSAML\XML\Type\IDValue|null $id
28+
* @param array<\SimpleSAML\XML\Attribute> $namespacedAttributes
29+
*/
30+
public function __construct(
31+
QNameValue $base,
32+
// xs:typeDefParticle
33+
?TypeDefParticleInterface $particle = null,
34+
// xs:attrDecls
35+
array $attributes = [],
36+
?AnyAttribute $anyAttribute = null,
37+
// parent defined
38+
?Annotation $annotation = null,
39+
?IDValue $id = null,
40+
array $namespacedAttributes = [],
41+
) {
42+
parent::__construct(
43+
base: $base,
44+
particle: $particle,
45+
attributes: $attributes,
46+
anyAttribute: $anyAttribute,
47+
annotation: $annotation,
48+
id: $id,
49+
namespacedAttributes: $namespacedAttributes,
50+
);
51+
}
52+
}

0 commit comments

Comments
 (0)