mirror of
https://github.com/RustPython/RustPython.git
synced 2026-06-09 22:49:57 +09:00
Merge pull request #2802 from eldpswp99/iskeyword-none-check
add iskeyword None check
This commit is contained in:
@@ -9,8 +9,6 @@ class Test_iskeyword(unittest.TestCase):
|
||||
def test_uppercase_true_is_not_a_keyword(self):
|
||||
self.assertFalse(keyword.iskeyword('TRUE'))
|
||||
|
||||
# TODO: RUSTPYTHON
|
||||
@unittest.expectedFailure
|
||||
def test_none_value_is_not_a_keyword(self):
|
||||
self.assertFalse(keyword.iskeyword(None))
|
||||
|
||||
|
||||
@@ -6,13 +6,17 @@ mod decl {
|
||||
use itertools::Itertools;
|
||||
use rustpython_parser::lexer;
|
||||
|
||||
use crate::builtins::pystr::PyStrRef;
|
||||
use crate::builtins::PyStr;
|
||||
use crate::vm::VirtualMachine;
|
||||
use crate::PyObjectRef;
|
||||
|
||||
#[pyfunction]
|
||||
fn iskeyword(s: PyStrRef) -> bool {
|
||||
lexer::KEYWORDS.contains_key(s.as_str())
|
||||
fn iskeyword(s: PyObjectRef) -> bool {
|
||||
if let Some(s) = s.payload::<PyStr>() {
|
||||
lexer::KEYWORDS.contains_key(s.as_str())
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
|
||||
#[pyattr]
|
||||
|
||||
Reference in New Issue
Block a user