src/aaz_dev/cli/controller/az_operation_generator.py [305:345]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        assert self._json.ref is None
        assert isinstance(self._json.schema, CMDSchema)
        if self._json.schema.arg:
            self.arg_key, hide = self._cmd_ctx.get_argument(self._json.schema.arg)
            assert not hide

        self.typ, _, self.cls_builder_name = render_schema(
            self._json.schema, self._cmd_ctx.update_clses, name=self._json.schema.name)

        self._update_over_schema(self._json.schema)

    def _update_over_schema(self, s):
        if getattr(s, 'cls', None):
            self._cmd_ctx.set_update_cls(s)

        if isinstance(s, CMDObjectSchemaBase):
            if s.props:
                for prop in s.props:
                    self._update_over_schema(prop)
            if s.additional_props and s.additional_props.item:
                self._update_over_schema(s.additional_props.item)
            if s.discriminators:
                for disc in s.discriminators:
                    self._update_over_schema(disc)
        elif isinstance(s, CMDArraySchemaBase):
            if s.item:
                self._update_over_schema(s.item)
        elif isinstance(s, CMDObjectSchemaDiscriminator):
            if s.props:
                for prop in s.props:
                    self._update_over_schema(prop)
            if s.discriminators:
                for disc in s.discriminators:
                    self._update_over_schema(disc)

    def iter_scopes(self):
        if not self._json.schema or not isinstance(self._json.schema, (CMDObjectSchema, CMDArraySchema)):
            return

        for scopes in _iter_request_scopes_by_schema_base(self._json.schema, self.BUILDER_NAME, None, self.arg_key, self._cmd_ctx):
            yield scopes
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/aaz_dev/cli/controller/az_operation_generator.py [389:428]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        assert self._json.ref is None
        assert isinstance(self._json.schema, CMDSchema)
        if self._json.schema.arg:
            self.arg_key, hide = self._cmd_ctx.get_argument(self._json.schema.arg)
            assert not hide
        self.typ, _, self.cls_builder_name = render_schema(
            self._json.schema, self._cmd_ctx.update_clses, name=self._json.schema.name)

        self._update_over_schema(self._json.schema)

    def _update_over_schema(self, s):
        if getattr(s, 'cls', None):
            self._cmd_ctx.set_update_cls(s)

        if isinstance(s, CMDObjectSchemaBase):
            if s.props:
                for prop in s.props:
                    self._update_over_schema(prop)
            if s.additional_props and s.additional_props.item:
                self._update_over_schema(s.additional_props.item)
            if s.discriminators:
                for disc in s.discriminators:
                    self._update_over_schema(disc)
        elif isinstance(s, CMDArraySchemaBase):
            if s.item:
                self._update_over_schema(s.item)
        elif isinstance(s, CMDObjectSchemaDiscriminator):
            if s.props:
                for prop in s.props:
                    self._update_over_schema(prop)
            if s.discriminators:
                for disc in s.discriminators:
                    self._update_over_schema(disc)

    def iter_scopes(self):
        if not self._json.schema or not isinstance(self._json.schema, (CMDObjectSchema, CMDArraySchema)):
            return

        for scopes in _iter_request_scopes_by_schema_base(self._json.schema, self.BUILDER_NAME, None, self.arg_key, self._cmd_ctx):
            yield scopes
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



