mirror of
https://github.com/github/codeql.git
synced 2026-02-11 20:51:06 +01:00
Rust: Add upgrade and downgrade scripts
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
class Element extends @element {
|
||||
string toString() { none() }
|
||||
}
|
||||
|
||||
class Enum extends Element, @enum { }
|
||||
|
||||
class Struct extends Element, @struct { }
|
||||
|
||||
class Union extends Element, @union { }
|
||||
|
||||
class Attr extends Element, @attr { }
|
||||
|
||||
class GenericParamList extends Element, @generic_param_list { }
|
||||
|
||||
class Name extends Element, @name { }
|
||||
|
||||
class Visibility extends Element, @visibility { }
|
||||
|
||||
class WhereClause extends Element, @where_clause { }
|
||||
|
||||
query predicate new_enum_attrs(Enum enum, int index, Attr attr) {
|
||||
type_item_attrs(enum, index, attr)
|
||||
}
|
||||
|
||||
query predicate new_enum_generic_param_lists(Enum enum, GenericParamList g) {
|
||||
type_item_generic_param_lists(enum, g)
|
||||
}
|
||||
|
||||
query predicate new_enum_names(Enum enum, Name name) { type_item_names(enum, name) }
|
||||
|
||||
query predicate new_enum_visibilities(Enum enum, Visibility visibility) {
|
||||
type_item_visibilities(enum, visibility)
|
||||
}
|
||||
|
||||
query predicate new_enum_where_clauses(Enum enum, WhereClause whereClause) {
|
||||
type_item_where_clauses(enum, whereClause)
|
||||
}
|
||||
|
||||
query predicate new_struct_attrs(Struct struct, int index, Attr attr) {
|
||||
type_item_attrs(struct, index, attr)
|
||||
}
|
||||
|
||||
query predicate new_struct_generic_param_lists(Struct struct, GenericParamList g) {
|
||||
type_item_generic_param_lists(struct, g)
|
||||
}
|
||||
|
||||
query predicate new_struct_names(Struct struct, Name name) { type_item_names(struct, name) }
|
||||
|
||||
query predicate new_struct_visibilities(Struct struct, Visibility visibility) {
|
||||
type_item_visibilities(struct, visibility)
|
||||
}
|
||||
|
||||
query predicate new_struct_where_clauses(Struct struct, WhereClause whereClause) {
|
||||
type_item_where_clauses(struct, whereClause)
|
||||
}
|
||||
|
||||
query predicate new_union_attrs(Union union, int index, Attr attr) {
|
||||
type_item_attrs(union, index, attr)
|
||||
}
|
||||
|
||||
query predicate new_union_generic_param_lists(Union union, GenericParamList g) {
|
||||
type_item_generic_param_lists(union, g)
|
||||
}
|
||||
|
||||
query predicate new_union_names(Union union, Name name) { type_item_names(union, name) }
|
||||
|
||||
query predicate new_union_visibilities(Union union, Visibility visibility) {
|
||||
type_item_visibilities(union, visibility)
|
||||
}
|
||||
|
||||
query predicate new_union_where_clauses(Union union, WhereClause whereClause) {
|
||||
type_item_where_clauses(union, whereClause)
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,29 @@
|
||||
description: Renamed the `@type_item` union type to `@adt` and updated its relations
|
||||
compatibility: full
|
||||
|
||||
type_item_derive_macro_expansions.rel: delete
|
||||
type_item_attrs.rel: delete
|
||||
type_item_generic_param_lists.rel: delete
|
||||
type_item_names.rel: delete
|
||||
type_item_visibilities.rel: delete
|
||||
type_item_where_clauses.rel: delete
|
||||
|
||||
adt_derive_macro_expansions.rel: reorder type_item_derive_macro_expansions.rel (@type_item id, int index, @macro_items items) id index items
|
||||
|
||||
enum_attrs.rel: run downgrade.ql new_enum_attrs
|
||||
enum_generic_param_lists.rel: run downgrade.ql new_enum_generic_param_lists
|
||||
enum_names.rel: run downgrade.ql new_enum_names
|
||||
enum_visibilities.rel: run downgrade.ql new_enum_visibilities
|
||||
enum_where_clauses.rel: run downgrade.ql new_enum_where_clauses
|
||||
|
||||
struct_attrs.rel: run downgrade.ql new_struct_attrs
|
||||
struct_generic_param_lists.rel: run downgrade.ql new_struct_generic_param_lists
|
||||
struct_names.rel: run downgrade.ql new_struct_names
|
||||
struct_visibilities.rel: run downgrade.ql new_struct_visibilities
|
||||
struct_where_clauses.rel: run downgrade.ql new_struct_where_clauses
|
||||
|
||||
union_attrs.rel: run downgrade.ql new_union_attrs
|
||||
union_generic_param_lists.rel: run downgrade.ql new_union_generic_param_lists
|
||||
union_names.rel: run downgrade.ql new_union_names
|
||||
union_visibilities.rel: run downgrade.ql new_union_visibilities
|
||||
union_where_clauses.rel: run downgrade.ql new_union_where_clauses
|
||||
@@ -1,5 +1,5 @@
|
||||
description: Added the `@call_expr_base` union type
|
||||
compatibility: backwards
|
||||
description: Added the `@type_item` union type
|
||||
compatibility: full
|
||||
|
||||
call_expr_arg_lists.rel: delete
|
||||
call_expr_attrs.rel: delete
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,29 @@
|
||||
description: Renamed the `@adt` union type to `@type_item` and updated its relations
|
||||
compatibility: full
|
||||
|
||||
adt_derive_macro_expansions.rel: delete
|
||||
|
||||
enum_attrs.rel: delete
|
||||
enum_generic_param_lists.rel: delete
|
||||
enum_names.rel: delete
|
||||
enum_visibilities.rel: delete
|
||||
enum_where_clauses.rel: delete
|
||||
|
||||
struct_attrs.rel: delete
|
||||
struct_generic_param_lists.rel: delete
|
||||
struct_names.rel: delete
|
||||
struct_visibilities.rel: delete
|
||||
struct_where_clauses.rel: delete
|
||||
|
||||
union_attrs.rel: delete
|
||||
union_generic_param_lists.rel: delete
|
||||
union_names.rel: delete
|
||||
union_visibilities.rel: delete
|
||||
union_where_clauses.rel: delete
|
||||
|
||||
type_item_derive_macro_expansions.rel: reorder adt_derive_macro_expansions.rel (@adt id, int index, @macro_items items) id index items
|
||||
type_item_attrs.rel: run upgrade.ql new_type_item_attrs
|
||||
type_item_generic_param_lists.rel: run upgrade.ql new_type_item_generic_param_lists
|
||||
type_item_names.rel: run upgrade.ql new_type_item_names
|
||||
type_item_visibilities.rel: run upgrade.ql new_type_item_visibilities
|
||||
type_item_where_clauses.rel: run upgrade.ql new_type_item_where_clauses
|
||||
@@ -0,0 +1,45 @@
|
||||
class Element extends @element {
|
||||
string toString() { none() }
|
||||
}
|
||||
|
||||
class Adt extends Element, @adt { }
|
||||
|
||||
class Attr extends Element, @attr { }
|
||||
|
||||
class GenericParamList extends Element, @generic_param_list { }
|
||||
|
||||
class Name extends Element, @name { }
|
||||
|
||||
class Visibility extends Element, @visibility { }
|
||||
|
||||
class WhereClause extends Element, @where_clause { }
|
||||
|
||||
query predicate new_type_item_attrs(Adt adt, int index, Attr attr) {
|
||||
enum_attrs(adt, index, attr) or
|
||||
struct_attrs(adt, index, attr) or
|
||||
union_attrs(adt, index, attr)
|
||||
}
|
||||
|
||||
query predicate new_type_item_generic_param_lists(Adt adt, GenericParamList g) {
|
||||
enum_generic_param_lists(adt, g) or
|
||||
struct_generic_param_lists(adt, g) or
|
||||
union_generic_param_lists(adt, g)
|
||||
}
|
||||
|
||||
query predicate new_type_item_names(Adt adt, Name name) {
|
||||
enum_names(adt, name) or
|
||||
struct_names(adt, name) or
|
||||
union_names(adt, name)
|
||||
}
|
||||
|
||||
query predicate new_type_item_visibilities(Adt adt, Visibility visibility) {
|
||||
enum_visibilities(adt, visibility) or
|
||||
struct_visibilities(adt, visibility) or
|
||||
union_visibilities(adt, visibility)
|
||||
}
|
||||
|
||||
query predicate new_type_item_where_clauses(Adt adt, WhereClause where_clause) {
|
||||
enum_where_clauses(adt, where_clause) or
|
||||
struct_where_clauses(adt, where_clause) or
|
||||
union_where_clauses(adt, where_clause)
|
||||
}
|
||||
Reference in New Issue
Block a user